请参阅以下代码,这在PHP中完美运行.谁能解释我这段代码的工作原理.因为在下面的代码中我已声明$caregory_id without semicolon并且没有任何值减速.然后这个代码也可以完美地运行,没有任何错误,并var_dump($category_id)返回一个null值.
php如何在没有分号的情况下执行此代码?
<?php
$category_id= //No semicolon
var_dump($category_id); //returns NULL
?>
Run Code Online (Sandbox Code Playgroud)
Ja͢*_*͢ck 13
它的工作原理是因为PHP会像这样处理你的代码:
$category_id = var_dump($category_id);
Run Code Online (Sandbox Code Playgroud)
var_dump()获取的返回值分配给$category_id.PHP中的未定义变量被隐式设置为null,这是您在输出中看到的var_dump().但是,您也会收到有关$category_id未定义的通知; 如果你没有看到它,你应该在你的脚本中使用这个代码:
error_reporting(-1);
ini_set('display_errors', 'On');
Run Code Online (Sandbox Code Playgroud)
在开发过程中也建议使用这些设置,因为它们可以捕获在生产计算机上未被注意的问题.