加入收藏 | 设为首页 | 会员中心 | 我要投稿 肇庆站长网 (https://www.0758zz.cn/)- 数据分析、分布式云、安全管理、云计算、物联设备!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP数组的定义与销毁

发布时间:2022-07-24 11:13:30 所属栏目:PHP教程 来源:互联网
导读:在php中定义数据我们最常用的就是array()来实现了,当然如果你不知道数组长度可以如array[]这样来定义未知数据长度了,如果要清空数据我们可以直unset(array[key])或直接复值空. 数据定义实例代码如下: $array = array(one,two,three); var_dump($array); 在本
  在php中定义数据我们最常用的就是array()来实现了,当然如果你不知道数组长度可以如array[]这样来定义未知数据长度了,如果要清空数据我们可以直unset(array[key])或直接复值空.
 
  数据定义实例代码如下:
 
  ……
  $array = array('one','two','three');
  var_dump($array);
  ……
  在本代码片段的第一行,定义了一个一维数组$array,第二行的时候我们格式化输出了这个数组,结果是这样的:
 
  实例代码如下:
 
  array(3) {
  [0]=>
  string(3) "one"
  [1]=>
  string(3) "two"
  [2]=>
  string(5) "three"
  }
  现在兄弟解释一下这个输出结果,首先这个数组的输出结果的第一行,array(3)告诉我们这是个有三个元素的数组,首先0号元素是一个长度为3的字符串(string(3))…
 
  篇幅关系剩下两个就不说了吧,吼吼……,这说明什么呢?这说明在PHP中如果我们不为数组指定下标的话,那么他就自己自作主张的从零开始给我们弄一个下标出来——也就是PHP数组中的键名;再看看下边的例子:
 
  实例代码如下:
 
  ……
  $array = array('one',”hello”=>'two','three');
  var_dump($array);
  ……这一次我们定义数组的时候,为第二个元素指定了下标(从此以后,在本文中就叫做键名了,下标有点含糊不清!),第二个元素指定了键名(hello),咱们再看看输出结果:
 
  实例代码如下:
 
  array(3) {
  [0]=>
  string(3) "one"
  ["hello"]=>
  string(3) "two"
  [1]=>
  string(5) "three"
  }
  我想你也像我一样看到了一个很智能的现象,第一个元素的键名还是0——这个我们可以理解,因为我们没有指定,而PHP数组必须要有一个键名,PHP就自作主张从零开始创立了一个键名;第二个元素的时候,我们指定了键名,PHP就尊重我们的意见用了这个键名;复杂的事情在第三个元素,
 
  第三个元素,看起来也很简单,我们没有指定键名,PHP自动的把最大整数键名加上1,作为了键名.但是大家想过没有,如果我们把第一个元素的键名修改为“-5”,第二个元素键名不变,结果会是什么呢?我们拭目以待:
 
  实例代码如下:
 
  ……
  $array = array(-5=>'one',"hello"=>'two','three');
  var_dump($array);
  ……
  如果你想当然的认为,第三个元素的键名应该是-4,那么我告诉你在PHP4.3.0之前这个想法是对的,但是之后就错了,现在也就是PHP4.3.0之后的版本你将看到如下结果:
 
  实例代码如下:
 
  array(3) {
  [-5]=>
  string(3) "one"
  ["hello"]=>
  string(3) "two"
  [0]=>
  string(5) "three"
  }
  是的第三个元素是从0开始的,也就是不管你的负数有多小,下一个元素要是让PHP来定义键名的话,那么他就是从0开始——记住这个地方说的是,在现有的键名中如果最大的依然是个负数,不管负数有多小,PHP也是从零开始下一个键名.
 
  PHP数组的销毁很简单,像销毁其他变量一样.
 
  销毁整个数组:unset($array)
 
  销毁数组中的一个元素:unset($array[-5])

(编辑:肇庆站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读