PHP:三元运算符

AWA*_*AWA 0 php wordpress

这似乎是一个非常简单的问题,但我尝试的一切都给了我一个错误.

    if ( $query_results->have_posts() ) :   
    $count_results = $query_results->found_posts;
Run Code Online (Sandbox Code Playgroud)

问题:如何else在此代码中添加语句/功能?

我试图加括号&else,我也尝试了所有组合,带:?.什么都行不通..

eli*_*ide 5

那不是三元运营商; 这是一种不常见的if块语法.试试这个:

if ( $query_results->have_posts() ) {
    $count_results = $query_results->found_posts;
} else {
    // whatever
}
Run Code Online (Sandbox Code Playgroud)

注意:endif;您的代码中会有更晚的版本,您还需要使用上面的语法替换它们.也可能有elseif (...):或有else :陈述.虽然这些都是可以接受和有效的,但它们通常被认为更难阅读,而且你最好使用大括号,就像我上面的例子一样.

对于它的价值,我见过的唯一一个使用冒号语法(if (...):)的项目是Wordpress.我确信他们有理由这样做,但这绝对是不太常见的语法.