为了顺应当前形势和更好的发展,黑基网已于9月19日正式更名为【安基网】,域名更换为www.safebase.cn,请卸载旧的APP并安装新的APP,给您带来不便,敬请理解!谢谢

黑基Web安全攻防班
安基网 首页 IT技术 网络管理 查看内容

如何在PHP中使用数组

2005-6-11 15:09| 投稿: Linux

摘要: 在 PHP 里要使用数组时,只要将变量进行「初始化」数组时的程序即可。 范例: $names[0] ...
在 PHP 里要使用数组时,只要将变量进行「初始化」数组时的程序即可。 范例: $names[0] = "Jollen" $names[1] = "Jordan" $names[2] = "Kitty" $names["howmany"] = 3; scalar array 与 associative array 在上面的例子中,我们看到: $names[3] = "Kitty" 是以 3 这个数值做索引,以数值做索引 (index, key) 的数组称为 scalar array。 另外一个例子: $names["howmany"] = 3; 以字符串做索引的数组我们称为 associative array。 多维数组 多维数组的初始化与一维数组方法相同,例如: $alpha[0][0] = "A"; $alpha[0][1] = "B"; $alpha[1][0] = "C"; $alpha[1][1] = "D"; 这种写法等于: $alpha[0][] = "A"; $alpha[0][] = "B"; $alpha[1][] = "C"; $alpha[1][] = "D"; 数组的内部指针 PHP 里的数组事实上是利用资料结构中的双向键接串列來维护的,因此我们可以利用 next() 与 pre()函数数组列的內部指标往前或往后一个元素。数组里的指标除了利用 PHP 提供的函数外,外界无法直接去改变数组的內部指标。 PHP 数组函数 - array()、count()、current()、list()、next()、pre()、reset()、key()、array() 用途: 建立一个数组,依给定的参数 (语法) 传回数组。 范例: $name = array("Jollen", "Paul", "Ketty"); 相当于: $name[0] = "Jollen"; $name[1] = "Paul"; $name[2] = "Ketty"; array() 亦可为用在巢状式数组: $fruits = array( "fruits" => array("a"=>"orange","b"=>"banana","c"=>"apple"), "numbers" => array(1, 2, 3, 4, 5, 6), "holes" => array("first", 5 => "second", "third") ); 上面为建立一个二维数组的范例。此例相当于: $fruits["fruits"]["a"] = "orange"; $fruits["fruits"]["b"] = "banana"; $fruits["fruits"]["c"] = "apple"; $fruits["numbers"][0] = 1; $fruits["numbers"][1] = 2; $fruits["numbers"][2] = 3; $fruits["numbers"][3] = 4; $fruits["numbers"][4] = 5; $fruits["numbers"][5] = 6; $fruits["holes"][0] = "first"; $fruits["holes"][5] = "second"; $fruits["holes"][6] = "third"; array() 事实上并不是函数,而是 PHP 提供的一个语法。 count() 定义: int count(mixed var); 用途: 传回 var (通常为阵列) 的元素个数,非阵列的变量则只有一个元素。没果没有这个 var 变量,则传回 0;如果 var 不是数组,则传回 1。 范例: $names = array("jollen", "nick", "frank"); echo count($names); 输出: 3 current() 定义: mixed current(array array); 用途: 传回目前数组里的指针所指元素的「值」。每一个数组都有一个内部的指针,指向其中的一个元素。数组的所有元素利用双向串行连接,这个指针便指向目前的元素。一开始这个指标是指到数组的第一个元素,利用其他函数存取数组時,便会改变这个指标,current() 便是传回目前所指的数组元素的值,但不会改变这个指标的位置。 传回指针指向数组的范围之外的位置,便传回 false。有一特殊情况要特別小心,当元素的值为 0 或是空字串 "" 时,也会传回 false,此时可改用 echo()函数。 list() list() 并不是一个 function,而是像 array() 一样,属于 PHP 的语法。list() 用来一次给定多个值给多个变量。 范例: Employee name Salary $result = mysql($conn, "SELECT id, name, salary FROM employees"); while (list($id, $name, $salary) = mysql_fetch_row($result)) { print(" ". " $name ". " $salary ". " "); } ?> next() 定义: mixed next(array array); 用途: 传回下一个数组指针所指的值,注意是先把指针往下移,再传回值。如果元素的值是 0 或 "" (空字符串),则传回 false。当指针已指向数组尾段,无法再往下移时,则传回 false。 可利用 echo() 函数来观察数组中是否有 0 或 ""。 prev() 定义: mixed prev(array array); 用途: 将数组内部指针往前移前一位后,再传回元素的值。 reset() 定义: mixed reset(array array); 用途:将数组的指针初始化,即移到第一个元素的位置,并且传回第一个元素的值。 key() 定义: mixed key(array array); 用途: 传回目前 associative array 中的 key,即数组内部指针所指元素位置的 key。配合 reste()、next() 的综合范例如下: $fruits = array("d"=>"lemon","a"=>"orange","b"=>"banana","c"=>"apple"); arsort($fruits); for(reset($fruits); $key = key($fruits); next($fruits)) { echo "fruits[$key] = ".$fruits[$key]." "; } 输出: fruits[a] = orange fruits[d] = lemon fruits[b] = banana fruits[c] = apple 循环由第一个元素开始拜访所有的元素,到最后一个元素结束。

小编推荐:欲学习电脑技术、系统维护、网络管理、编程开发和安全攻防等高端IT技术,请 点击这里 注册黑基账号,公开课频道价值万元IT培训教程免费学,让您少走弯路、事半功倍,好工作升职加薪!



免责声明:本文由投稿者转载自互联网,版权归原作者所有,文中所述不代表本站观点,若有侵权或转载等不当之处请联系我们处理,让我们一起为维护良好的互联网秩序而努力!联系方式见网站首页右下角。


鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

最新

返回顶部