ホームページ > バックエンド開発 > PHPチュートリアル > if() で変数が空かどうかを判断する方法は 2 つありますが、どちらの方が良いでしょうか?違いはありますか?

if() で変数が空かどうかを判断する方法は 2 つありますが、どちらの方が良いでしょうか?違いはありますか?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-06-13 12:53:48
オリジナル
1607 人が閲覧しました

変数が空かどうかを判断するには、if() の 2 つのメソッドのうちどちらが適していますか?違いはありますか?
WordPressの勉強をしていると、カスタムフィールドが空かどうかを判定する方法として次の2つがあり、どちらもIF()を使用します。 PHP を初めて使用するので、これら 2 つの方法の違いがわかりません。どちらの方が効率的ですか?
// ループ内の指定されたキーの最初の値を表示します
$key_1_value = get_post_meta($post->ID, 'key_1', true);
//カスタムフィールドに値があるかどうかを確認します
if($key_1_value != '') {
echo $key_1_value;
}
?>

// カスタムフィールド値が存在する場合は、それに基づいて画像を表示します

ID, 'url', true);

if($image) : ?>




-----解決策---------
引用:
ありがとうございます。 if($image)の方法によると、if(key_1_value)の方が簡潔ではないでしょうか?パラメータとして変数のみを使用する if($image) を使用することをお勧めしますか?


if($image) と if(!$image) はまったく逆の概念です
たとえば
<br />
	$find=1;<br />
	if($find){<br />
		echo "find不为空";<br />
	}else{<br />
		echo "find为空";<br />
	}<br />
	//相当于<br />
	if(!$find){<br />
		echo "find为空";<br />
	}else{	<br />
		echo "find不为空";<br />
	}<br />
ログイン後にコピー

それは $find です! $find の if と else の内容が真逆です



-----解決策---------
if($key_1_value!='') {//これは、$key_1_value が空でない限り渡すことができ、$key_1_value=0 が空ではなく、すべての $key_1_value=0 も渡すことができることを意味します
echo $key_1_value;
}
if($key_1_value) {//これは、$key_1_value が true であることを意味します。いわゆる true は、$key_1_value を空または 0 にすることはできません。この条件には、$key_1_value を 0 にすることはできないという条件が 1 つあります。 echo $key_1_value;
}
//上記 2 つのメソッドの機能は少し異なります。ニーズに応じて異なります
?>
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート