PHP笔记
来源:互联网 发布:mac os 10.12镜像下载 编辑:程序博客网 时间:2024/05/16 09:23
类型
数组
PHP中的数组实际上是一个有序映射。
语法
定义数组 array()
可以用 array() 语言结构来新建一个 array。它接受任意数量用逗号分隔的 键(key) => 值(value) 对。
array( key => value , ... )// 键(key) 可是是一个 整数(integer) 或 字符串(string)// 值(value) 可以是任意类型的值
<?php// 这个数组与下面的数组相同 ...array(5 => 43, 32, 56, "b" => 12);// ...array(5 => 43, 6 => 32, 7 => 56, "b" => 12);?>
Warning
自 PHP 4.3.0 起,上述的索引生成方法改变了。如今如果给一个当前最大键名是负值的数组添加一个新值,则新生成的的索引将为零(0)。以前新生成的索引为当前最大索引加一,和正值的索引相同。
要改变一个值,只要给它赋一个新值。如果要删除一个键名/值对,要对它用 unset()。
如果给出方括号但没有指定键名,则取当前最大整数索引值,新的键名将是该值 + 1。如果当前还没有整数索引,则键名将为 0。如果指定的键名已经有值了,该值将被覆盖。
注意这里所使用的最大整数键名不一定当前就在数组中。它只要在上次数组重新生成索引后曾经存在过就行了。
unset() 函数允许删除数组中的某个键。但要注意数组将不会重建索引。
<?php$a = array(1 => 'one', 2 => 'two', 3 => 'three');unset($a[2]);/* will produce an array that would have been defined as $a = array(1 => 'one', 3 => 'three'); and NOT $a = array(1 => 'one', 2 =>'three');*/print_r($a);$b = array_values($a);// Now $b is array(0 => 'one', 1 =>'three')print_r($b);?>
为什么 $foo[bar] 错了?
<?php$foo[bar] = 'enemy';echo $foo[bar];// etc?>
这样是错的,但可以正常运行。那么为什么错了呢?原因是此代码中有一个未定义的常量(bar)而不是字符串('bar'-注意引号),而 PHP 可能会在以后定义此常量,不幸的是你的代码中有同样的名字。它能运行,是因为 PHP 自动将裸字符串(没有引号的字符串且不对应于任何已知符号)转换成一个其值为该裸字符串的正常字符串。例如,如果没有常量定义为
bar
,PHP 将把它替代为 'bar' 并使用之。- PHP-笔记
- php笔记
- php笔记
- PHP笔记
- PHP笔记
- php笔记
- PHP 笔记
- php笔记
- PHP笔记
- PHP笔记
- 【PHP】笔记
- php笔记
- php笔记
- PHP笔记
- php笔记
- php笔记
- php笔记
- php笔记
- 建置一個 WINCE 下的 XML BASE 的人機介面引擎 ---- 繪圖引擎篇 (3)
- C#中前台线程和后台线程的区别
- autoconf 用法
- Reflector dll反编译工具
- [PHP]框架CodeIgniter中的表单教程
- PHP笔记
- centos 命令补全
- J2EE flex框架
- vs的【warning C4996:'fopen': This function or variable may be unsafe】解决方案
- POJ 1113(Wall-Quickhull)
- POJ3352 桥,边双连通分量,构造边双连通图
- poj - 2142 - The Balance
- Google Play services SDK的安装
- SQL Prompt:SQL智能提示功能的SQL Server和VS插件