This is a collection of questions that come up every now and then about syntax in PHP. This is also a Community Wiki, so everyone is invited to participate in maintaining this list.
It used to be hard to find questions about operators and other syntax tokens.¹
The main idea is to have links to existing questions on Stack Overflow, so it's easier for us to reference them, not to copy over content from …
我NULL在PHP中有一个问题:
$a = '';
if($a == NULL) {
echo 'is null';
}
Run Code Online (Sandbox Code Playgroud)
当为空字符串时,为什么我看到为null$a?那是一个错误吗?
为什么===比==PHP 更快?
php operators comparison-operators equality-operator identity-operator
可能重复:
php == vs === operator
等式(== double equals)和identity(=== triple equals)比较运算符有何不同?
为什么以下语句会返回true?
"608E-4234" == "272E-3063"
Run Code Online (Sandbox Code Playgroud)
我也试过用字符串周围的单引号.我可以false通过使用===运算符而不是使用运算符来获得它的唯一方法==
我的猜测是PHP将它视为某种方程,但它似乎有点奇怪.
任何人都可以详细说明吗?
php中==和===有什么区别?我不确定何时使用两者.
更新的注释:因此它显示在StackOverflow搜索中,==和===之间的差异与!=和!==之间的差异相同.
我正在寻找检查查看是否在查询中返回任何结果的最佳方法.我觉得我经常写这部分代码,有时候会出错,有时我也不会.
例如,我运行此查询以检查在将新的用户名插入数据库之前是否存在用户名.
$result = mysql_query("SELECT * FROM ...");
Run Code Online (Sandbox Code Playgroud)
然后我想检查并查看是否返回了任何结果.这是我做的一种方式:
if (!$result) { PERFORM ACTION }
Run Code Online (Sandbox Code Playgroud)
如果第一种方法不起作用,那么有时会这样:
if (mysql_num_rows($result)==0) { PERFORM ACTION }
Run Code Online (Sandbox Code Playgroud)
然后我甚至看到我可以在前几天这样做:
list($total) = mysql_fetch_row($result);
if ($total==0) { PERFORM ACTION }
Run Code Online (Sandbox Code Playgroud)
做这个的最好方式是什么?
我一直这样做,if($foo!==$bar)但我意识到这if($foo!=$bar)也是正确的.Double =仍然可以工作,并且一直为我工作,但每当我搜索PHP运算符时,我发现没有关于double的信息,=所以我认为我总是做错了,但它仍然有用.所以,我要改变这一切我!==来!=只是为了它的缘故?
只是想知道你是否可以帮我解决这个问题:
我有一个多维数组......
$my_array = array(
0 => array(
"name" => "john",
"id" => 4
),
1 => array(
"name" => "mark",
"id" => 152
),
2 => array(
"name" => "Eduard",
"id" => 152
)
);
Run Code Online (Sandbox Code Playgroud)
想知道什么是最快和最有效的方法来检查数组$ my_array是否包含任何具有键"id"及其值152的值.我不需要回显或使用任何值.如果数组中有任何ID为"key"且值为"152"的记录,我只需要检查(返回true).
我注意到有人使用PHP操作符===,我无法理解.我已经尝试了一个功能,它以疯狂的方式对应.
这个运算符的定义是什么?我甚至无法在PHP运算符的声明中找到它.