Есть ли способ поместить условия в переменную и затем использовать эту переменную в операторе 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 ()
,