PHPで文字列をスペースで区切って配列に変換するテクニック
作成日:2025.02.09
PHPでキーワード検索を実装する際などに、文字列をスペースで区切って配列に変換する方法を解説します。全角スペースの変換や空要素の削除についても詳しく説明します。
PHPでキーワード検索の処理を実装する際などに、ユーザーが入力したキーワードの値をスペースで区切って配列に入れて処理したい、みたいな時のメモ。
// ユーザーの入力したキーワード文字列(事前にXSS対策などをしておくこと)
$query = 'PHP JavaScript CSS';
// 全角スペースを半角スペースに変換
$query = mb_convert_kana($query, 's');
// スペースで区切って配列に入れる
$keywords = explode(' ', $query);
// ユーザーの入力したキーワードにスペースが連続している場合は空要素ができるので削除
$keywords = array_filter($keywords, 'strlen');
上記のコードを実行すると、$keywords
には以下のような配列が入る。
array(3) {
[0]=>
string(3) "PHP"
[1]=>
string(10) "JavaScript"
[2]=>
string(3) "CSS"
}
- mb_convert_kana
- 全角かなと半角かなを変換する関数。第二引数に
's'
を指定すると、全角スペースを半角スペースに変換する。 - explode
- 文字列を指定した区切り文字で分割して配列に入れる関数。第一引数に区切り文字、第二引数に分割する文字列を指定する。
- array_filter
- 配列の要素をコールバック関数でフィルタリングする関数。第一引数に配列、第二引数にコールバック関数を指定する。ここでは
strlen
関数を指定しているので、空文字列以外の要素だけを残す。 - strlen
- 文字列の長さを返す関数。ここでは
array_filter
で使うためにコールバック関数として指定している。

奈良市を拠点に、25年以上の経験を持つフリーランスWebエンジニア、阿部辰也です。
これまで、ECサイトのバックエンド開発や業務効率化システム、公共施設の予約システムなど、多彩なプロジェクトを手がけ、企業様や制作会社様のパートナーとして信頼を築いてまいりました。
【制作会社・企業様向けサポート】
Webシステムの開発やサイト改善でお困りの際は、どうぞお気軽にご相談ください。小さな疑問から大規模プロジェクトまで、最適なご提案を心を込めてさせていただきます。
ぜひ、プロフィールやWeb制作会社様向け業務案内、一般企業様向け業務案内もご覧くださいね。
Response APIのWeb Search機能をPHPで実装:最新情報を取得できるチャットボットの作り方
2025.03.17
Response APIの新機能"Web Search"を使って、インターネット上の最新情報を取得できるチャットボットを作ります。PHPによる実装方法や、APIレスポンスの処理方法など、実用的な内容をコード例とともに解説していきます
OpenAIの新APIを使ってみた:Response APIによるチャットボットをPHPで実装
2025.03.16
OpenAIが新たに発表したResponse APIを使用して、PHPでシンプルなチャットボットを実装してみました。Chat Completions APIとの違いや、実装時のポイントを、実際のコード例と共に解説します。特に会話履歴の管理方法の違いに注目して、両APIの特徴を比較しています。
chakoshiで問合せフォームへの無差別営業メール対策に挑戦してみる
2025.03.09
新サービス「chakoshi」を実際に体験し、問合せフォームへの無差別営業メール対策としてどのように利用できるかを検証しました。プレイグラウンドでのカスタム検知項目の設定から、APIキーの取得、PHPによるAPI連携の実装手順まで、具体例とスクリーンショットを交えて解説します。
SimpleSAMLphpを使ったPHPアプリケーションのSSO対応ガイド
2025.02.11
SimpleSAMLphpを使ってPHPアプリケーションにSSO機能を追加する方法を紹介します。Microsoft Entra IDとの連携方法や、認証情報の取得方法について詳しく解説します。