php三元运算符要多个赋值,php让三元运算符用起来更简单的小技巧
今天我發(fā)現(xiàn)了PHP三元運(yùn)算符的一個(gè)小小的用法. 這給我干涸的大腦一點(diǎn)樂趣!
PHP 三元運(yùn)算符是對參數(shù)賦值時(shí)候的一個(gè)簡潔的主要用法. 一個(gè)主要的用法: PHP 三元運(yùn)算符能夠讓你在一行代碼中描述判定代碼, 從而替換掉類似以下的代碼:<?php
if (isset($value)) {
$output = $value;
} else {
$output = 'No value set.';
}
使用以下代碼替代:<?php
$output = isset($value) ? $value : 'No value set.';
第二個(gè)代碼例子是非常簡潔的用法, 在多種情況下(并非所有), 這是一個(gè)非常實(shí)用的用法. 有許多關(guān)于是否應(yīng)該使用三元運(yùn)算符的爭辯;讓我說, 這就是一個(gè)工具, 向其他工具一樣, 只是用的正確與否.
常用的語法是 (expression) ? value if truthy : value if falsy.這個(gè)表達(dá)式可以是一個(gè)變量, 測試這個(gè)變量是真還是假:<?php $output = $value ? $value : 'No value set.';
問題是: 以上的例子很常用同時(shí)也重復(fù)的有些煩人: 寫兩次 $value 就像是感到錯(cuò)誤一樣.
好在是, 我今天發(fā)現(xiàn)在 PHP 5.3 中介紹了一個(gè)更簡潔的使用三元運(yùn)算符的語法. 你可以從手冊中學(xué)到, 但是這里我們怎么樣讓上邊的例子更簡潔呢:<?php
$output = $value ?: 'No value set.';
這個(gè)看起來很熟悉, 這個(gè)是因?yàn)楹芟衿渌暮唽戇\(yùn)算符:<?php
$value = $value . $other_value;
轉(zhuǎn)換成:<?php
$value .= $other_value;
為了更簡潔, 這個(gè)意味著我們可以這樣簡寫并不意味著我們就應(yīng)該這么寫. 但是, 當(dāng)我們寫簡潔代碼的時(shí)候, 這種方式會看起來更清楚, 我們應(yīng)該這么寫, (并且這個(gè)特性允許我們在多種情況下使用這個(gè)運(yùn)算符[this feature allows us to DRY up the ternary operator in many cases])
總結(jié)
以上是生活随笔為你收集整理的php三元运算符要多个赋值,php让三元运算符用起来更简单的小技巧的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: asp语言与php语言的差别,用什么语言
- 下一篇: 安装完php后iis 503,IIS上安