PHP简写概述

新手上路,请多包涵

我已经使用 PHP 编程多年,但我从未学会如何使用任何速记。我不时在代码中遇到它并且很难阅读它,所以我想学习该语言存在的不同速记,以便我可以阅读它并开始通过使用它来节省时间/线路,但是我似乎无法找到所有速记的全面概述。

Google 搜索几乎只显示 if/else 语句的简写,但我知道肯定不止这些。

简而言之,我说的是这样的东西:

 ($var) ? true : false;

原文由 James Simpson 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 354
2 个回答

下面是 PHP 中使用的一些速记运算符。

 //If $y > 10, $x will say 'foo', else it'll say 'bar'
$x = ($y > 10) ? 'foo' : 'bar';

//Short way of saying <? print $foo;?>, useful in HTML templates
<?=$foo?>

//Shorthand way of doing the for loop, useful in html templates
for ($x=1; $x < 100; $x++):
   //Do something
end for;

//Shorthand way of the foreach loop
foreach ($array as $key=>$value):
   //Do something;
endforeach;

//Another way of If/else:
if ($x > 10):
    doX();
    doY();
    doZ();
else:
    doA();
    doB();
endif;

//You can also do an if statement without any brackets or colons if you only need to
//execute one statement after your if:

if ($x = 100)
   doX();
$x = 1000;

// PHP 5.4 introduced an array shorthand

$a = [1, 2, 3, 4];
$b = ['one' => 1, 'two' => 2, 'three' => 3, 'four' => 4];

原文由 Ali 发布,翻译遵循 CC BY-SA 3.0 许可协议

PHP 5.3 引入:

 $foo = $bar ?: $baz;

which assigns the value of $bar to $foo if $bar evaluates to true (else $baz ).

您还可以嵌套三元运算符(正确使用括号)。

除此之外,没有什么其他的了。您可能需要阅读 文档

原文由 Felix Kling 发布,翻译遵循 CC BY-SA 2.5 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏