非常に単純な質問のようですが、ここでは入力値の例として「0888」を使用しています。私はしばらく研究し、次のようなさまざまな方法を試しました
(int) "0888";
intval("0888");
floatval("0888");
settype("0888", "integer");
残念ながら、どれも機能していないようです。参考1 参考2 参考3
$num = $_POST['postcode'];
if((1000 <= $num && $num <= 1999) || (2000 <= $num && $num <= 2599) || (2619 <= $num && $num <= 2898) || (2921 <= $num && $num <= 2999)){
$state = "NSW";
}
elseif((0200 <= $num && $num <= 0299) || (2600 <= $num && $num <= 2618) || (2900 <= $num && $num <= 2920)){
$state = "ACT";
}
elseif((3000 <= $num && $num <= 3999) || (8000 <= $num && $num <= 8999)){
$state = "VIC";
}
elseif((4000 <= $num && $num <= 4999) || (9000 <= $num && $num <= 9999)){
$state = "QLD";
}
elseif((5000 <= $num && $num <= 5799) || (5800 <= $num && $num <= 5999)){
$state = "SA";
}
elseif((6000 <= $num && $num <= 6797) || (6800 <= $num && $num <= 6999)){
$state = "WA";
}
elseif((7000 <= $num && $num <= 7799) || (7800 <= $num && $num <= 7999)){
$state = "TAS";
}
elseif((0800 <= $num && $num <= 0899) || (0900 <= $num && $num <= 0999)){
$state = "NT";
}
else {
$state = "Can not find this postcode record";
}
echo $state
NT が表示されると思っていたのに、実際には「この郵便番号レコードが見つかりません」と表示された場合。誰が問題が何であるか教えてもらえますか?