人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPの検索時のコードで下記では、検索時に「部分一致」になってしまいます。
こちらを「前方一致」にするにはどうしたらよいのでしょうか。


if (!empty($search_word)) {
foreach ($prefectures as $word) {
$find = stristr($word, $search_word);
if ($find !== FALSE) {
$reply = $reply . $find . "\n";
}
}


何卒よろしくお願いいたします。

●質問者: 匿名質問者
●カテゴリ:ウェブ制作
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● 匿名回答1号
ベストアンサー

最小変更だと

if ($find !== FALSE) {

if ($find === $word) {

でいいだろうけど、素直なのはforeach内を

 $find = stripos($word, $search_word);
 if ($find === 0) {
 $reply = $reply . $word . "\n";
 }

#大文字小文字は区別しないんだよね?

[追記]

 $find = substr_compare($word, $search_word, 0, strlen($search_word), true);
 if ($find === 0) {
 $reply = $reply . $word . "\n";
 }

ってのもあった


匿名質問者さんのコメント
ありがとうございます。 無事できました!
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ