• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

php的未定义索引如何解决

php 搞代码 4年前 (2022-01-04) 29次浏览 已收录 0个评论

通常出现未定义的索引问题是由于数组没有这个值造成的,数组分为关联数组和索引数组,索引数组是数字下标;关联数组是键值下标。

$POST['id']之所以报未定义索引是因为$POST这个数组里没有包含下标键值为id的值。 (推荐学习:PHP视频教程)

解决办法:

判断数组中是否包含下标键值为id的值,如果没有,则返回错误信息,如何判断呢,最简单的方法就是用函数isset来判断,如isset($POST['id']),存在则返回true,反之则为false;

三元判断法,不存在给一个默认的数值, 如 $POST['id'] = isset($POST['id'])?$POST['id']:"1";

当您(或PHP)尝来源gao*daima.com搞@代#码网试访问数组的未定义索引时,会出现此通知。

处理问题的方法:

在访问索引之前检查索引是否存在。为此您可以使用isset()或array_key_exists():

//isset()$value = isset($array['my_index']) ? $array['my_index'] : '';//array_key_exists()$value = array_key_exists('my_index', $array) ? $array['my_index'] : '';

语言构造list()在尝试访问不存在的数组索引时可能会生成此内容:

list($a, $b) = array(0 => 'a');//orlist($one, $two) = explode(',', 'test string');

两个变量用于访问两个数组元素,但是只有一个数组元素index 0,因此这将生成:

注意:未定义的偏移量:1

$_POST/ $_GET/ $_SESSION可变

使用时$_POST,上面的注意事项经常出现,$_GET或$_SESSION。

对于您而言$_POST,$_GET您只需在使用之前检查索引是否存在。因为$_SESSION您必须确保以会话开始session_start()并且索引也存在。

以上就是php的未定义索引如何解决的详细内容,更多请关注搞代码gaodaima其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:php的未定义索引如何解决

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址