PHP速记如果不能与echo结合作为选项之一?[重复]

问题描述 投票:0回答:1

这是在注册表单中的一行,它将在成功时把通过POST输入的值传递给一个叫做'user'的类。失败时,我想让它回传一条失败信息。

if(isset($_POST['email']))?$user->email=$_POST['email']:echo "no value found";

以下是错误信息

解析错误:语法错误,意外的'? C:\xampp\htdocs/login_API\Users/signup.php 在线 15

php echo conditional-operator isset
1个回答
0
投票

echo 是一个语句,不是一个表达式,它不能作为另一个表达式的一部分。

你应该使用一个普通的 if 语句。

if (isset($_POST['email'])) {
    $user->email = $_POST['email'];
} else {
    echo "no value found";
}

从风格上讲,只有在某个地方使用三元表达式的结果时,才应该使用三元表达式,例如

$user->email = isset($_POST['email']) ? $_POST['email'] : "[email protected]";

不要用它来替代 if.

© www.soinside.com 2019 - 2024. All rights reserved.