私はフォーム上で素早く重複チェックをしています。 2つの文字列を比較するとき、私はこのような何かしようとしていた:文字列の比較。 'like'の文字を見つける
if (stripos($_SESSION['website'], $f['website']))
を、私はこのエラーを取得しています:
Fatal error: Call to undefined function: stripos() in...
私は$_SESSION['website']
がWWWで基本的にあれば、それは完全に一致する必要はありません。 google.com、私は$f['website]
場合stripos
はtrue
を返すようにしたいと思いますwww.goog.com
は、私が何か間違ったことをやっている、またはこれを行うには良い方法はありますか?
私はいくつかのテストを行っていましたが、私の$_SESSION['website']
変数にwww
と.com
が含まれていることがわかりました。私の$f['website]
も変わります。いいえ、strpos
本当にそれを返すべきではないですか?
'stripos()'はPHP5で導入されました。どのバージョンを実行していますか?代わりに、文字列のコピーを作成し、 'strtolower()'を使ってすべてが小文字であることを確認し、 'strpos()'を使って検索タームの位置を見つけ出し、元の文字列に適用することができます。 –
ここでは2つの異なる質問があります。最初は致命的なエラーで、@MikeBのように見えます。 2つ目は、 'stripos'関数だけで処理できるものよりもはるかに複雑な処理をしたいということです。 [striposのドキュメント](http://php.net/manual/en/function.stripos.php)には、「文字列内の大文字と小文字を区別しない部分文字列の最初の出現位置を見つける」と書かれています。 'stripos'は' $ f ['website'] 'が 'www.goog'の場合は** 0 **(真ではない)を返しますが、www.goog.comではfalseを返します。 – Travesty3
@MikeB、私はPHP5を実行していますが、あなたの 'strtolower()'メソッドは現在動作します。ありがとう! @ Travesty3、私は文字列比較を行う方法について他の提案がありますか? – etm124