これは、部分文字列が文字列内にあるかどうかを伝えるために適切に動作すると仮定します。これを行うためのより簡潔な方法がありますか?PHP、 'Haystack contains Needle?'
if(is_int(strpos($haystack, $needle))){
...
}
これは、部分文字列が文字列内にあるかどうかを伝えるために適切に動作すると仮定します。これを行うためのより簡潔な方法がありますか?PHP、 'Haystack contains Needle?'
if(is_int(strpos($haystack, $needle))){
...
}
私はそうしません。 FALSE
と厳密に比較するだけです。
$found = strpos($haystack, $needle) !== FALSE;
実際にはありません。それはあなたがしていることを表現するための最も明白な方法のどれがあなたの好みに本当にかかります。いくつかの選択肢:
if(strpos($h, $n) !== FALSE){
// stuff
}
if(strpos($h, $n) > -1){
// stuff
}
最も一般的なアプローチは、厳密なFALSE
比較を使用することが考えられますので、あなたは、オープンソースプロジェクトの作業や、あなたのコードを使用している他の多くの人々を持っている場合、そのオプションを検討してください。
なぜですか? 'is_int'のように見え、より簡潔になりました。 – bfavaretto
@bfavarettoこれは不要な余分な関数呼び出しです。これはとりわけ高価です(http://stackoverflow.com/questions/3691625/why-are-php-function -calls-so-expensive)です。 – alex
ええ、そこにポイントがあります。 – bfavaretto