任何人都可以告诉我,我的错误是什么。我知道它只会注意到。一切都运作良好,但只显示此通知。如何解决这个问题? :
这是代码:
if (isset($_GET['match']) && $_GET['match'] == 'one') {
$checked_match_one = ' checked="checked"';
$page_string .= SEP.'match=one';
} else {
$_GET['match'] = 'all';
$checked_match_all = ' checked="checked"';
$page_string .= SEP.'match=all';
}
它告诉我的错误:
Notice: Undefined variable: page_string in C:\xampp\htdocs\msigilearnv2\admin\enrollment_attendance.php on line 110
Done writing the list into excel. Download
答案 0 :(得分:8)
Simple.Initialize $page_string
在使用它之前(我们可以说if
语句之前)
$page_string = '';
if (isset($_GET['match']) && $_GET['match'] == 'one') {
$checked_match_one = ' checked="checked"';
$page_string .= SEP.'match=one';
}
答案 1 :(得分:5)
由于您正在使用变量的连接运算符(第一次),您应该注意将该变量初始化为null,然后只能启动任何操作(包括。=,+ =等短手操作符) - =,等)..
答案 2 :(得分:3)
您需要在$page_string
语句之前初始化if
变量。
喜欢这个..
$page_string = ''; //<--------- Here
if (isset($_GET['match']) && $_GET['match'] == 'one') {
$checked_match_one = ' checked="checked"';
$page_string .= SEP.'match=one';
答案 3 :(得分:3)
嗯,它在错误消息中说得很好:在您尝试阅读之前,您没有定义$page_string
。
$page_string .= 'something'
操作是
$page_string = $page_string . 'something'
换句话说,您正在尝试读取 $page_string
的值(尚未定义),将'something
附加到该值,并将结果放入进入$page_string
。因此,当您尝试读取未定义变量的值时,PHP执行automagic thing,假设该值应为null
,但至少它会向您发送通知 - 因为这是可疑行为。
为什么要发送通知?好吧,拿这段代码:
$mesage = 'DO NOT ';
if ($something_foo_bar) {
$message .= 'LAUNCH the nuclear missiles!';
}
该代码可能不会做开发人员的意图。糟糕。
答案 4 :(得分:2)
只需在前面添加$page_string = "";
。