PHP:函数的不稳定行为?

时间:2011-07-07 11:32:00

标签: php

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);

1 个答案:

答案 0 :(得分:4)

Here解释了它。

你不能在空函数内调用函数

  

注意:

     

empty()仅将变量检查为   其他任何东西都会导致解析   错误。换句话说,以下   不起作用:空(修剪($ name))。

您可以在变量中指定返回值,并检查该变量是否为空

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

if (empty($subFolderCheck))
{
  //do stuff
}