Sta*_*ann 5 php syntax shorthand
嘿伙计:)需要帮助.我目前正在研究ZEND框架并在index.php中遇到过这个问题:
// Define path to application directory
defined('APPLICATION_PATH')
|| define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../application'));
Run Code Online (Sandbox Code Playgroud)
这是一样的吗?:
if(!defined('APPLICATION_PATH')){
define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../application'));
}
Run Code Online (Sandbox Code Playgroud)
我以前从未遇到过这种简写语法......
||是一个短路运算符,这意味着第二个操作数,在这种情况下define(...)仅在第一个操作数求值为false的情况下进行求值.因为衬衫电路操作员的操作数实际上可能会产生副作用,所以短路可能会取代if声明.
查看这篇文章:http://en.wikipedia.org/wiki/Short-circuit_evaluation