在视图文件中使用 PHP 替代语法 - CodeIgniter 3.x 用户手册

返回介绍

在视图文件中使用 PHP 替代语法

发布于 2019-10-31 字数 1856 浏览 863 评论 0

如果你不使用 CodeIgniter 的 模板引擎
那么你就只能在视图文件中使用纯 PHP 语法了。为了精简视图文件,
使其更可读,建议你在写控制结构或 echo 语句时使用 PHP 的替代语法。
如果你还不熟悉这个语法,下面将介绍如何通过这个语法来消灭你代码
中的大括号和 echo 语句。

自动短标记支持

注解

如果你发现本页所介绍的语法在你的服务器上行不通,那么有可能是
你的 PHP.ini 文件中禁用了 “短标记”。CodeIgniter 可以动态的重写
所有的短标记,这样即使你的服务器不支持你也可以使用短标记语法。
这个特性可以在 config/config.php 文件中启用。

请注意,如果你使用了这个特性,当你的视图文件发生 PHP 错误时,
错误信息和行号将无法准确显示,因为所有的错误都显示成 eval() 错误。

Echo 替代语法

通常情况,你会使用下面的方法来打印一个变量:

<?php echo $variable; ?>

使用替代语法,你可以写成这样:

<?=$variable?>

控制结构的替代语法

像 if、for、foreach、while 这样的控制结构也可以写成精简的格式。
下面以 foreach 举例:

<ul>

<?php foreach ($todo as $item): ?>

    <li><?=$item?></li>

<?php endforeach; ?>

</ul>

注意这里没有任何括号。所有的结束括号被替换成了 endforeach
上面说的那些控制结构也都有这相似的结束标志:endif
endforendforeachendwhile

另外要注意的一点是,每个分支结构的后面都要跟一个冒号,而不是分号
(除最后一个),这是非常重要的一点!

这里是另一个例子,使用了 if/elseif/else ,注意看冒号的位置:

<?php if ($username === 'sally'): ?>

    <h3>Hi Sally</h3>

<?php elseif ($username === 'joe'): ?>

    <h3>Hi Joe</h3>

<?php else: ?>

    <h3>Hi unknown user</h3>

<?php endif; ?>

上一篇:处理多环境

下一篇:安全

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

支持 Markdown 语法,需要帮助?

目前还没有任何评论,快来抢沙发吧!