php - 三元运算符在 godaddy php 中不起作用(parsererror)

标签 php codeigniter ternary-operator

<分区>

<br />↵<b>Parse error</b>: syntax error, unexpected ':' in <b>.../ajax.php</b> on line <b>87</b>

第 87 行:$conditions = ($this->input->post()) ? : array('tutor'=>$this->session->userdata('user_id'));

第 87 行在本地主机上工作正常,但是当我使用 godaddy 时,我得到了那个错误。是否需要在 php.ini 中设置一些东西或让三元运算符工作的东西?

谢谢!

最佳答案

三元运算符(顾名思义)通常需要 3 个参数

$var = $expr ? $trueValue : $falseValue;

在 PHP5.3 中允许省略 $trueValue。在这种情况下,它的 $expr 用于它

$var = $expr ? : $falseValue;
// same as
$var = $expr ? $expr : $falseValue;

您的服务器上可能没有 PHP5.3。正如您在我的示例中所见,修复此问题并使其为 5.3 之前的版本做好准备非常容易

$conditions = ($this->input->post()) 
            ? ($this->input->post()) 
            : array('tutor'=>$this->session->userdata('user_id'));

关于php - 三元运算符在 godaddy php 中不起作用(parsererror),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6418849/

相关文章:

php - 在 symfony 中,包是什么?

php - Codeigniter 的多域

java - 问号 "?"和冒号 ":"运算符用于什么?

java - 三元打印操作

php - MySQL选择产品-同类产品

javascript - 当我搜索我的网站并按 Enter 键时,搜索会正确执行,但按按钮时,搜索结果不会

PHP Codeigniter foreach 崩溃

php - CodeIgniter DataMapper ORM 内存问题

php - 转换变量时的三元运算符

php - in_array 找不到值