php – 我可以在字符串中存储逻辑比较吗?

我试图模块化一个冗长的if..else函数.

$condition = "$a < $b";
if($condition)
{
    $c++;
}

有没有办法将文字字符串翻译成逻辑表达式?

解决方法:

I am trying to modularise a lengthy if..else function.

您不需要将条件放在字符串中,只需存储布尔值true或false:

$condition = ($a < $b);
if($condition)
{
    $c++;
}

the values of $a and $b may change between deFinition of $condition and its usage

一个解决方案是Closure(假设定义和用法发生在同一范围内):

$condition = function() use (&$a, &$b) {
    return $a < $b;
}
$a = 1;
$b = 2;
if ($condition()) {
    echo 'a is less than b';
}

但我不知道这是否对你有意义而不知道你想要完成什么.

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...