if ( count( $entry_array>0 ) )
{
$GLOBALS[ 'year' ] = substr($entry_array[0], 5, 2); //line 22
$GLOBALS[ 'month' ] = substr($entry_array[0], 7, 2); //line 23
$GLOBALS[ 'day' ] = substr($entry_array[0], 9, 2); //line 24
}
Run Code Online (Sandbox Code Playgroud)
第22,23,24行的错误说明:未定义的偏移量:0
有任何想法来解决这个问题..
本if应读
if (count($entry_array) > 0)
Run Code Online (Sandbox Code Playgroud)
在您的代码中,您正在评估$entry_array > 0,它将返回一个布尔值.然后你得到的count那个值,如果参数不是数组,通常会导致1该值.
当评估1为bool(对于if)时,它的计算结果为true,因此if即使数组为空,最终也会执行even 的正文.
所以它不能保证工作,因为也许你的数组没有索引0,但可能这是原因,所以我先尝试一下.