我不明白这段 PHP 代码,它在做什么?

I do not understand this PHP Code, what is it doing?

如何阅读php

我在学习php,我写了这个。 (出自一本书)

   <?php if(!empty($data)):  ?>
        <ul>
             <?php foreach ($data as $dataprint): ?>
                  <li><?= $dataprint ?></li>
             <?php endforeach ?>
        </ul>

我无法理解本节中的某些代码。

1. 为什么第1行和第3行有冒号?
2. ' ) 是什么意思,为什么没有标准的 'PHP' 字?
3.为什么下一个是等号?

第 1 行和第 3 行的冒号是执行以下代码的另一种方法

if (!empty($data)) {
    ...
}

输出HTML.

的时候更干净

(见http://php.net/manual/en/control-structures.alternative-syntax.php

<?= 是 shorthand 的写法 <?php echo,同样它只是另一种做事方式。

(见http://php.net/manual/en/function.echo.php

  1. 冒号 - 这是语句的 shorthand 版本,您不应该在这么早的阶段真正学习它们。首先你需要学习完整版。

  2. <?= $variable ?><?php echo $variable ?> 的缩写,但意思完全相同。

此外,问题一的速记版本实际上并不是一个好的做法,因为当你嵌套它们时它们很难阅读。

您可以在 php 中编写许多类型的循环... 1) 例如:if(condition){...code...}else{...code...} 或 if(condition): 表示,代替“{”,您可以使用“:”并结束循环使用 "endif" 2) 你的第 2 点是在 php 中用简码写的,因为你必须在 php.ini

中启用简码