用于PHP的合并功能?
许多编程语言都有一个coalesce函数(返回第一个非NULL值,例如)。 不幸的是,在2009年,PHP并没有。
在PHP本身获得coalesce函数之前,用PHP实现一个好的方法是什么?
在PHP 5.3中有一个新的操作符可以这样做: ?:
// A
echo 'A' ?: 'B';
// B
echo '' ?: 'B';
// B
echo false ?: 'B';
// B
echo null ?: 'B';
资料来源:http://www.php.net/ChangeLog-5.php#5.3.0
PHP 7引入了一个真正的合并运算符:
echo $_GET['doesNotExist'] ?? 'fallback'; // prints 'fallback'
如果之前的值??
不存在或null
的值为??
被采取。
在上面提到的改善?:
运营商,即??
也处理未定义的变量而不抛出E_NOTICE
。
首先在google上打“php coalesce”。
function coalesce() {
$args = func_get_args();
foreach ($args as $arg) {
if (!empty($arg)) {
return $arg;
}
}
return NULL;
}
http://drupial.com/content/php-coalesce
链接地址: http://www.djcxy.com/p/9935.html