ホームページ > バックエンド開発 > PHPチュートリアル > phpの文字列判定に関する疑問

phpの文字列判定に関する疑問

WBOY
リリース: 2016-06-13 12:16:08
オリジナル
871 人が閲覧しました

php
での文字列判定に関する質問は次のとおりです。
if(0 == 'name'){
echo true;
}else{
echo false が返されるのはなぜですか? ;
}

0 を他の数値に置き換えて false を返します
if(1== 'name'){
echo true;
}else{
echo false;
}
-----ソリューションのアイデア----------------------
これは分析ですPHP メカニズムの問題、
if(1 == '1name'){
echo true;
}else{
echo false;
}

これは true
------解決策----------------------

文字列と数値を取得して比較文字列を数値に変換します (0 に変換します)。そのため、等価
と 1 の比較は等しくありません
-----解決策のアイデア-------- - ----------
文字列と数値を比較する場合、文字列を数値に変換して比較します。 「name」は数値に変換すると0なので等しいです。
------ソリューションのアイデア----------------------
文字列とリソースが数値のような場合比較、文字列とリソースを数値に変換し、通常の数学に従って比較します
------解決策のアイデア----- - -
php は、比較される型を自動的に変換します。
前に整数 0 があり、その後ろに 'name' という文字列があります。PHP はその文字列を数値に変換しますが、name は数値に変換できないため、0 0=0 のみを返すことができます。
0 と '123' を比較すると、それらは等しくありません。

<br />var_dump((int)'123');<br />var_dump((int)'name');<br />
ログイン後にコピー

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート