php数组不为连续数问题

php数组下标不为连续数问题

(1)前言

这个问题是博主在刷upload靶场时遇到的。

(2)问题描述

图片.png

这里博主分别定义了a[0]与a[2]并赋值,然后计算a这个数组共有多少的元素并打印,同时打印a[2];

如果a为数组,又因为a[1]并没有进行赋值,则按理来说会自动赋予空字符。因此用count函数去计算a数组的元素返回值应为3,但却返回了2。

(3)问题的解决

这可能是博主php的代码不过关。遇到了这个问题博主立刻去恶补了一下php数组的知识,了解到了一下特性。

  • php数组特点(以下内容参考黑马程序员的相关教程)

(1)可以整数下标或者字符串下标

如果数组下标都为整数:索引数组

如果数组下标都为字符串:关联数组

(2)不同下标可以混合存在:混合数组

(3)数组元素的顺序以放入顺序为准,跟下标无关

图片.png

(4)数字下标的自增长特性:从0开始自动增长,如果中间手动出现较大的,那么后面的自增长元素从最大的值+1开始

(5)特殊值下标自动转换

图片.png

(7)php数组元素没有类型限制

(8)php数组元素没有长度限制

(9)php中的数组是很大的数据,所以存储的位置是堆区,为当前数组分配一块连续的内存。

打赏
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2021-2023 00hello00

请我喝杯咖啡吧~

支付宝
微信