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で使うためにコールバック関数として指定している。
奈良市を拠点に、26年以上の経験を持つフリーランスWebエンジニア、阿部辰也です。
これまで、ECサイトのバックエンド開発や業務効率化システム、公共施設の予約システムなど、多彩なプロジェクトを手がけ、企業様や制作会社様のパートナーとして信頼を築いてまいりました。
【制作会社・企業様向けサポート】
Webシステムの開発やサイト改善でお困りの際は、どうぞお気軽にご相談ください。小さな疑問から大規模プロジェクトまで、最適なご提案を心を込めてさせていただきます。
ぜひ、プロフィールやWeb制作会社様向け業務案内、一般企業様向け業務案内もご覧くださいね。
Composerオートローダーでの「Class not found」エラー対処法
2025.10.18
Composerを利用してPHPライブラリをインストールした後に発生する「Class not found」エラーの原因と、その対処法について解説しています。特に、オートローダーの設定が正しく機能していない場合の具体的なエラー例を基に手順を紹介。
PHPで実現するCloud Vision API OCR入門:画像からテキスト抽出の基本
2025.09.30
Google Cloud Vision API を利用して、PHP で画像からテキストを抽出する OCR 処理の基本的な実装方法を解説します。API の有効化や認証情報の取得、PHP クライアントライブラリのインストール手順から、実際のコード例に基づいた OCR 処理の流れを紹介。
onelogin/php-samlで実現するPHP SAML認証:基本設定から動作確認まで
2025.09.25
軽量ライブラリである onelogin/php-saml を利用して、PHPでSAML認証を実装する方法を詳しく解説します。Composerによるインストールから、証明書・秘密鍵の準備、設定ファイルの作成、そしてSPのメタデータ生成やSSO・ACSの各スクリプトまで、SAML認証の基本設定と動作確認の一連の流れをサンプルコードを交えて紹介。
PHPで実現するHTML目次自動生成:見出しタグ抽出と目次リンクの出力
2025.07.31
PHPを活用して、HTML文書から見出しタグを抽出し、目次リンクを自動生成する方法を解説します。見出しに自動でIDを付与する仕組みや、抽出した情報をリスト形式で出力するサンプルコードを紹介。効率的なドキュメント構造の整備とSEO対策に繋がる実践的な手法を、わかりやすくまとめています。