PHP:函数的不稳定行为


PHP: Erratic behaviour of functions?

PHP到底在这里做什么?

第一行工作得很好,但是当我试图检查parse_url的返回是否为空时,我的整个执行都停止了,并且出现了臭名昭著的白屏幕:

工作:

$subFolderCheck = ( strlen( parse_url('http://www.example.com', PHP_URL_PATH)) >1  ? true : false);

让我的脚本变得疯狂:

$subFolderCheck = ( empty( parse_url('http://www.example.com', PHP_URL_PATH))  ? true : false);

解释如下:

不能在空函数

中调用函数

注意:

empty()只检查变量是否为其他任何内容都将导致解析错误。换句话说,就是以下内容empty(trim($name)).

你可以在变量中赋值返回值并用空

检查变量
$subFolderCheck=(parse_url('http://www.example.com', PHP_URL_PATH))  ? true : false);
if (empty($subFolderCheck))
{
  //do stuff
}