CodeIgniter 在視圖文件中使用 PHP 替代語(yǔ)法

2018-07-21 15:38 更新

在視圖文件中使用 PHP 替代語(yǔ)法

如果你不使用 CodeIgniter 的 模板引擎, 那么你就只能在視圖文件中使用純 PHP 語(yǔ)法了。為了精簡(jiǎn)視圖文件, 使其更可讀,建議你在寫(xiě)控制結(jié)構(gòu)或 echo 語(yǔ)句時(shí)使用 PHP 的替代語(yǔ)法。 如果你還不熟悉這個(gè)語(yǔ)法,下面將介紹如何通過(guò)這個(gè)語(yǔ)法來(lái)消滅你代碼 中的大括號(hào)和 echo 語(yǔ)句。

自動(dòng)短標(biāo)記支持

注解

如果你發(fā)現(xiàn)本頁(yè)所介紹的語(yǔ)法在你的服務(wù)器上行不通,那么有可能是 你的 PHP.ini 文件中禁用了 “短標(biāo)記”。CodeIgniter 可以動(dòng)態(tài)的重寫(xiě) 所有的短標(biāo)記,這樣即使你的服務(wù)器不支持你也可以使用短標(biāo)記語(yǔ)法。 這個(gè)特性可以在 config/config.php 文件中啟用。

請(qǐng)注意,如果你使用了這個(gè)特性,當(dāng)你的視圖文件發(fā)生 PHP 錯(cuò)誤時(shí), 錯(cuò)誤信息和行號(hào)將無(wú)法準(zhǔn)確顯示,因?yàn)樗械腻e(cuò)誤都顯示成 eval() 錯(cuò)誤。

Echo 替代語(yǔ)法

通常情況,你會(huì)使用下面的方法來(lái)打印一個(gè)變量:

<?php echo $variable; ?>

使用替代語(yǔ)法,你可以寫(xiě)成這樣:

<?=$variable?>

控制結(jié)構(gòu)的替代語(yǔ)法

像 if、for、foreach、while 這樣的控制結(jié)構(gòu)也可以寫(xiě)成精簡(jiǎn)的格式。 下面以 foreach 舉例:

<ul>

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

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

<?php endforeach; ?>

</ul>

注意這里沒(méi)有任何括號(hào)。所有的結(jié)束括號(hào)被替換成了 endforeach 。 上面說(shuō)的那些控制結(jié)構(gòu)也都有這相似的結(jié)束標(biāo)志:endif 、 endfor 、endforeach 和 endwhile 。

另外要注意的一點(diǎn)是,每個(gè)分支結(jié)構(gòu)的后面都要跟一個(gè)冒號(hào),而不是分號(hào) (除最后一個(gè)),這是非常重要的一點(diǎn)!

這里是另一個(gè)例子,使用了 if/elseif/else ,注意看冒號(hào)的位置:

<?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; ?>
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)