php - 字符串之间的逻辑运算

标签 php string

假设您有一些字符串,我应该如何转换它们以便能够在 PHP 中对它们使用逻辑运算?有可能吗?

例子:我要

"x=1"&&"x=0"

返回false

最佳答案

简介

我注意到你有两个 Logical Operator &&Assignment Operator在字符串 = 中并且您要评估赋值在字符串中有一个逻辑运算符。说真的,我不知道你是怎么来到这里的,但这是非常错误的,但出于教育目的,请标记

分割

"x=1"  &&  "x=0" = False 
  ^    ^     ^
  |    |     | 
       |     |
X == 1 |     |
       |     |
      AND    |
             |
           X == 0

上面的表达式总是false 因为X 不能等于 0 1同时

为了能够在 PHP 中进行这样的评估,您需要编写自己的函数,例如 logicalString,您可以在其中使用类似 logicalString("x=1")logicalString("x=0")

假设

$x = 1; // Imagine value of X 

示例 1 &&

// Start Evaluation with &&
if (logicalString("x=1") && logicalString("x=0")) {
    echo "&& - True\n";
} else {
    echo "&& - False\n";
}

输出 1

&& - False 

示例 2 - ||

// Start Evaluation with ||
if (logicalString("x=1") || logicalString("x=0")) {
    echo "|| - True\n";
} else {
    echo "|| - False\n";
}

输出 2

|| - True

使用的函数( Not to be used in production See Why )

function logicalString($str) {
    parse_str($str, $v);
    foreach ( $v as $k => $var ) {
        if (! isset($GLOBALS[$k]) || $GLOBALS[$k] != $var)
            return false;
    }
    return true;
}

SEE ONLINE DEMO on PHP 4.3.0 - 5.5.0alpha3

关于php - 字符串之间的逻辑运算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11310859/

相关文章:

php - 为什么 "include"在示例代码中不起作用?

PHP 命名空间自动加载

c# - 如何从名称集合构建字符串

excel - 如果 "aaa=1"、 "aab=2"(最大 "zzz=??"),如何将字符串值转换为数字?

Javascript - 在单个字符串的不同行上返回对象的值

php - if else 条件不适用于 php 中的数组值

javascript - Bigcommerce 自定义标题面板未正确加载标题

php不执行mysql的查询,但在mysql中是可执行的

c - 将字符串分配给 char* 变量

javascript - 查找数组中的某些字符串(Javascript)