有沒有簡略的版本檢查是否有多個變量具有相同的值請?而不是我如何使IF語句的快捷鍵?
: -
if ($a="valid")
{do stuff;}
if ($b="valid")
{do stuff;}
if ($c="valid")
{do stuff;}
if ($d="valid")
{do stuff;}
有一樣的東西: -
if ($a or $b or $c or $d = "valid")
{do stuff;}
有沒有簡略的版本檢查是否有多個變量具有相同的值請?而不是我如何使IF語句的快捷鍵?
: -
if ($a="valid")
{do stuff;}
if ($b="valid")
{do stuff;}
if ($c="valid")
{do stuff;}
if ($d="valid")
{do stuff;}
有一樣的東西: -
if ($a or $b or $c or $d = "valid")
{do stuff;}
約翰·孔德的解決方案是一個很好的解決方案。如果你想堅持的基本字符串比較,有點像在您的示例代碼,那麼你可以做:
if ($a == 'valid' or
$b == 'valid' or
$c == 'valid' or
$d == 'valid') {
// DO STUFF
}
東西要記住,基於我從你的示例代碼注意:在做比較的在PHP中平等,請使用==
而不是=
。單個=
用於分配,而雙==
用於比較。
感謝球員...我使用這種風格,因爲我實際上使用<>而不是== –
@Blackwolf - 很高興我可以幫助。感謝您接受我的回答。儘管如此,我仍然樂意接受John Conde的解決方案 - 這是一個很好的解決方案。 –
只要把你要檢查到一個數組,並使用in_array()
檢查一次全部變量:
if (in_array('valid', array($a, $b, $c, $d))) {
do stuff;
}
你可以提取一個函數做比較,並有:
if (check($a) || check($b) ...)
它不像約翰提出的那樣性感(不管他的女朋友說什麼)我不得不承認。
可以呀,是這樣的:組建一個數組,然後使用in_array
的
if (($a || $b || $c || $d) == "valid")
糾正我,如果我錯了,但這似乎是和而不是或雖然 –
我沒有它,這意味着(「 aaa「&&」bbb「&&」valid「)將等於」有效「?還有「aaa」和「bbb」? –
[你確定這有用嗎?](http://codepad.viper-7.com/Z0NOQM)我認爲[你的意思是使用'||'](http://codepad.viper-7.com/ef3osu ); –
如果($一個== '有效' || $ B == '有效' || $ C == '有效' || $ d == '有效'){// DO STUFF}
這將是最好的,因爲如果第一個條件是真的,那麼不需要檢查休息。
是一個錯字還是你在IF語句中賦值?如果是的話,如果($ a = $ b = $ c ='valid')... lol – Craftein
typo:D ...應該是if($ a ==「valid」)...我的不好 –