PHP报unexpected 'else' (T_ELSE)语法错误 附代码求助排查
报错原因
该语法报错由if分支的大括号匹配错误导致:
- 你编写的
if判断语句后没有添加左大括号{,$result = true;后的单独右大括号}直接提前闭合了emptyInputSignup函数的作用域,后续的else分支出现在了函数外部,PHP解析器判定函数逻辑已经结束,因此抛出「意外的else,期望文件结束」的报错。
修正代码
补全if对应的左大括号即可解决问题,修正后的完整代码如下:
<?php function emptyInputSignup($name, $email, $username, $pwd, $pwdRepeat) { $result; if (empty($name) || empty($email) || empty($username) || empty($pwd) || empty($pwdRepeat)) { $result = true; } else { $result = false; } return $result; }
可选优化:你可以直接将判断结果作为返回值,省略额外的$result变量简化代码:
function emptyInputSignup($name, $email, $username, $pwd, $pwdRepeat) { return empty($name) || empty($email) || empty($username) || empty($pwd) || empty($pwdRepeat); }
内容的提问来源于stack exchange,提问作者Chris barnes
相关产品推荐
相关产品推荐

