有了这个测试页面:
$page = (int) $_GET['page'] ?: '1';
echo $page;
Run Code Online (Sandbox Code Playgroud)
我不明白页面未定义时我得到的输出:
Request Result
?page=2 2
?page=3 3
?page= 1
? error: Undefined index page
Run Code Online (Sandbox Code Playgroud)
为什么出现错误信息?这是PHP 5.3; 为什么它不回应"1"?
Fel*_*ing 12
正确的方式(在我看来)将是:
$page = isset($_GET['page']) ? (int) $_GET['page'] : 1;
Run Code Online (Sandbox Code Playgroud)
即使您使用了新样式,也会出现问题?page=0(0评估为false)."新"并不总是更好......你必须知道何时使用它.