簡體   English   中英

將IF條件放入變量中

[英]Put IF condition inside a variable

有什么方法可以將條件放入變量中,然后在if語句中使用該變量? 請參閱以下示例:

$value1 = 10;
$value2 = 10;

$value_condition = '($value1 == $value2)';

if ($value_condition) {
    echo 'It works!';
} else {
    echo 'It doesnt work.';
}

我了解這可能是一個奇怪的問題。 我正在學習PHP的基礎知識。

無需使用字符串。 通過這種方式直接使用它:

$value1 = 10;
$value2 = 10;

$value_condition = ($value1 == $value2);

if ($value_condition) {
    echo 'It works!';
} else {
    echo 'It doesnt work.';
}

或進行評估,可以使用"來進行擴展和評估{ ... }變量。

我認為這可能有效! 另外,使用eval()是邪惡的! 因此,請確保在正確的地方使用它,以確保eval()函數不會有任何其他輸入!

==運算符的值為布爾值,因此您可以執行

$value1 = 10;
$value2 = 10;

$value_condition = ($value1 == $value2);

if ($value_condition) {
    echo 'It works!';
} else {
    echo 'It doesnt work.';
}

只需將比較結果分配給變量即可。

$value1 = 10;
$value2 = 10;

$value_condition = ($value1 == $value2);

if ($value_condition) {
    echo 'It works!';
} else {
    echo 'It doesnt work.';
}

if語句測試布爾值。 您可能會有這樣的事情:

if (true) {

您可以將布爾值分配給變量:

$boolValue = true;

您可以在if語句中使用變量:

if ($boolValue) {
   // true

在您的示例中:

$value_condition = $value1 == $value2; // $value_condition is now true or false
if ($value_condition) {

根據您要執行的操作, 匿名功能可能會有所幫助。

$value1 = 10;
$value2 = 10;

$equals = function($a, $b) {
    return $a == $b;
};

if ($equals($value1, $value2)) {
    echo 'It works!';
} else {
    echo 'It doesnt work.';
}

但是,當您使用use ()時,我只會這樣做(而不是使用常規函數use ()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM