好吧,我一直在教自己PHP并做了大约40个小时的小项目,我认为我没有贬低一个简单的IF语句,但......下面的两个回声显示了正确的事情(密码和密码的长度).
但是,带有"ARGH"的回声和studentnotexist函数被调用!我不知道为什么.当然这很简单.
echo $password;
echo strlen($password);
if (strlen($password < 2)) {
echo "********************* ARGH ************************";
studentnotexist();
session_destroy();
die();
}
else
//Begin IF blocks that test various conditions for user name and password
if ($password != $passwordentered) { //if password is wrong
badpassword();
die();
}
Run Code Online (Sandbox Code Playgroud)
您正在检查"$ password <$ 2"的长度而不是"$ password"的长度.
观察差异:
if (strlen($password < 2)) {
Run Code Online (Sandbox Code Playgroud)
VS
if (strlen($password) < 2) {
Run Code Online (Sandbox Code Playgroud)
看看括号的位置.
你想要第二个.