分享
 
 
 

如何在PHP中使用数组

王朝php·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

在 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

循环由第一个元素开始拜访所有的元素,到最后一个元素结束。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有