为什么这行脚本会崩溃apache?

时间:2011-02-08 18:41:25

标签: php syntax-error

这是我隔离的代码分支......

if ( !is_search() 
    && (get_option('option1') 
        && !(is_page() 
            || get_option('option2') 
                || get_option('option3') 
                    || in_category('excludeme', $post )
            )
        )
    )

我已插入......

<?php print "Hi, Mom!\n"; exit; ?> 

在此行的上方和下方,以隔离崩溃的原因

1 个答案:

答案 0 :(得分:2)

尝试将代码分成几个块以进一步隔离问题: 这显然是一个WordPress模板,即使您可能认为问题不在核心WordPress代码中,您可能需要将调试输出放在核心函数中以找出问题发生的确切位置。换句话说,您需要进入这些函数调用以找出导致问题的原因 - 您可能会在此时找到问题的解决方案。

<?php
echo '<pre>';

echo PHP_EOL . 'is_search' . PHP_EOL;
var_dump( is_search() );

echo PHP_EOL . 'get option 1' . PHP_EOL;
var_dump( get_option('option1') );

echo PHP_EOL . 'is_page' . PHP_EOL;
var_dump( is_page() );

echo PHP_EOL . 'get option 2' . PHP_EOL;
var_dump( get_option('option2') );

echo PHP_EOL . 'get option 3' . PHP_EOL;
var_dump( get_option('option3') );

echo PHP_EOL . 'in category' . PHP_EOL;
var_dump( in_category('excludeme', $post ) );