配列検索で大文字と小文字を区別しないようにするにはどうすればよいですか?

WBOY
リリース: 2016-06-13 13:26:15
オリジナル
1165 人が閲覧しました

配列内で検索するときに大文字と小文字を区別しないようにするにはどうすればよいですか?
次の 2 つが見つからないのはなぜですか? マニュアルを読んだのですが、false を追加するとうまくいかないのはなぜですか?

PHP コード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--><?php
$dr=array('cc','Dd','Ee');
if(in_array("dd",$dr,false)){
    echo "aa";
}

if(array_search("dd",$dr,false)){
    echo "aa";
}
?>
ログイン後にコピー


-----解決策---------------- - ---
needle が文字列の場合、比較では大文字と小文字が区別されます。
3 番目のパラメータ strict の値が TRUE の場合、in_array() 関数は針のタイプが干し草の山のものと同じかどうかもチェックします。


------解決策---------
in_array

オプション。このパラメータを true に設定すると、検索されたデータの型と配列の値が同じであるかどうかがチェックされます。

値の型が同じかどうかは大文字と小文字が区別されません

array_search

3 番目のパラメータ strict が true に指定されている場合、このパラメータは、データ型と値が一致している 対応する要素のキー名を返します。

も型と値であり、必要に応じて

1. 文字列比較関数を使用して
2.通常の
3. すべてを小文字に変換し、
....
を比較します。

------解決策----------------------
3 番目のパラメータはタイプを決定するもので、これも単に== ではなく === を使用してください。 。
それを横断する関数を要求します。

------解決策---------
このようなあなたは、php.net を自分で調べてください。将来、何百、何千もの基本的な質問に遭遇するでしょう。すべてに質問しますか?
------解決策---------

話し合う
引用:

needle が文字列の場合、比較では大文字と小文字が区別されます。
3 番目のパラメータ strict の値が TRUE の場合、in_array() 関数は針の種類が干し草の山のものと同じかどうかもチェックします。

聞きたいのですが、どのような状況で in_array 関数が大文字と小文字を区別しないのでしょうか?
配列に変更しても、大文字と小文字は区別されます。
$dr=array('cc','Dd','Ee');
$vr=arr……


------解決策---------
自分で書いてくださいPHP コード
$dr = array('cc','Dd','Ee'); if(in_iarray("dd",$dr,false)){ 「ああ」をエコーし​​ます。 } 関数 in_iarray($needle, $haystack, $strict=false) { if(! is_string($needle)) return in_array($needle, $haystack, $strict); return in_array(strto lower($needle), array_map('strto lower', $haystack));
ログイン後にコピー
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!