我已经创建了一个注册表,我正在尝试检查是否填写了所有字段等。我很确定代码的内容是正确的,但是PHP的准时方面存在问题!我查看了PHP手册,它似乎是对的?我收到错误
解析错误:语法错误,第 11 行出现意外的"[",预期为"("。 这是代码(虽然不是所有的寄存器脚本(
<?php
require('config/database.php');
require('includes/constants.php');
require('includes/functions.php');
//if form been submitted
if(isset($_POST['register'])) {
//if all fields been filled in
if(not_empty(['name', 'username', 'email', 'password', 'password_confirm'])){
$errors = [];
.....(continued)
?>
此代码通过本地主机工作,但不能通过网络主机工作?有什么想法吗?
如注释中所述,您的生产主机运行的是 PHP 5.3 或更早版本,而您的开发环境运行的是 PHP 5.4 或更高版本,这是添加 []
数组语法的地方。
幸运的是,只需进行一些小的调整即可使此代码在 PHP 5.3 上运行:
if(not_empty(array('name', 'username', 'email', 'password', 'password_confirm'))){
$errors = array();