Php 如果使用continue,则使用速记

Php 如果使用continue,则使用速记,php,syntax,conditional-operator,continue,Php,Syntax,Conditional Operator,Continue,我非常喜欢使用PHP的缩写if,但是当尝试将其与continue命令一起使用时,我的IDE将其标记为错误(语法错误,意外的continue)。为了找出原因,我在浏览器中运行了它(代码如下),但它没有给我任何错误 <?php ini_set('display_errors', 1); error_reporting(E_ALL); echo 'test<br /><br />'; foreach(range(1,10) as $i) { $i == '6

我非常喜欢使用PHP的缩写
if
,但是当尝试将其与
continue
命令一起使用时,我的IDE将其标记为错误(语法错误,意外的
continue
)。为了找出原因,我在浏览器中运行了它(代码如下),但它没有给我任何错误

<?php
ini_set('display_errors', 1); 
error_reporting(E_ALL);

echo 'test<br /><br />';

foreach(range(1,10) as $i) {
    $i == '6' ? continue : '';
    echo $i.'<br />';
}
?>

这不会输出任何东西。但是,如果我用
continue
注释掉该行,它将按预期工作


我在这里遗漏了什么例子?

您不能使用三元运算符来完成此操作

通过以下方式更改您的线路:

if ($i == 6) continue ;

不能使用三元运算符执行此操作

通过以下方式更改您的线路:

if ($i == 6) continue ;

在设置变量时会出现这种简写符号。那么你要做的就是

$i = continue;
我想你可以通过这种方式触发“继续”:

$i();
但这不是你想要的

此外,您不应该在循环中修改迭代器

所以只要使用

if ($whatever) continue;

在设置变量时会出现这种简写符号。那么你要做的就是

$i = continue;
我想你可以通过这种方式触发“继续”:

$i();
但这不是你想要的

此外,您不应该在循环中修改迭代器

所以只要使用

if ($whatever) continue;

三元运算符不是“速记if”!它执行条件赋值。三元运算符不是“如果”的缩写!它执行条件赋值。