咨询:为何PHP代码出现syntax error, unexpected '$age' (T_VARIABLE)错误
问题排查:syntax error, unexpected '$age' (T_VARIABLE)
嘿,这个语法错误的根源其实很简单——你把PHP和Java、C++这类强类型语言的变量声明规则搞混啦!
在PHP里,声明变量根本不需要加int这类前置的类型关键字,直接用$变量名 = 值;的格式就可以了。你写的int $age = 5;完全不符合PHP的语法逻辑,解释器看到int之后突然冒出来$age,根本不知道该怎么处理,所以就抛出了这个“意外遇到变量$age”的错误。
修正后的可运行代码
$age = 5; if($age < 18){ echo("Your age is " . $age . ", you cannot drive."); } else { echo("Your age is " . $age . ", you can drive."); }
额外补充:如果需要做类型约束
要是你想确保$age一定是整数类型,PHP 7.0及以上版本支持类型声明,你可以这么写:
// 给函数参数加类型声明 function checkDrivingAge(int $age) { if($age < 18){ echo("Your age is " . $age . ", you cannot drive."); } else { echo("Your age is " . $age . ", you can drive."); } } checkDrivingAge(5);
也可以对变量做强制类型转换:
$age = (int)5;
内容的提问来源于stack exchange,提问作者LibertyHike
相关产品推荐
相关产品推荐

