这是我的PHP代码,我搜索了解决方案,但即使添加var_dump($request);
后,我也收到了相同的通知< Notice: Undefined offset: 1 in C:\xampp\htdocs\index.php on line 5
>。
的index.php
<?php
$rd = dirname(__FILE__);
$request[]='';
var_dump($request);
if ($request[1] == '')
{
$request[1] = 'header';
include($rd.'/php_includes/'.$request[1].'.php');
}
if ($request[0] == '')
{
$request[0] = 'index';
include($rd.'/php_includes/'.$request[0].'.php');
}
?>
你可以帮我解决这个问题吗?
答案 0 :(得分:3)
最初,$request
不存在。您使用$request=[]''
添加一个元素,因此现在设置了$request[0]
。此后不久,您引用$request[1]
而不首先定义它。没有$request[1]
,这就是您收到此通知的原因。
你检查它是否有值的行,并因为未设置而抛出通知,是这一行:
if ($request[1] == '')
如果你想在没有发出通知的情况下查看它是否为空,请使用:
if (empty($request[1]))
如果未设置TRUE
,设置为$request[1]
,为空或0,则返回NULL
;所以它应该在没有发出通知的情况下完成你想要做的事情。
答案 1 :(得分:1)
您收到错误是因为您未设置时调用$ request [1]。 如果您希望将$ request声明为空数组,请执行以下操作:
$request = array();
如果你想检查它是否已设置或为空
if (!isset($request[1]) || empty($request[1]))
{
//your code here in case of not existing or being empty
}
$request[] = ''; // adds a value to the next key - they are autogenerated from 0 as int 0 1 2 3 4 5 6 and so on, if you don't declare them otherwise