|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
培训的第四阶段,就是应用PHP语言开发实际的程序。以结合实际的项目开发来进行学习,效果真的很好,在学习完之后就开始练习,能比较容易掌握所学的知识,这是学校的学习所没法比的。 array : 创立一个新的数组。
array_walk : 让用户自订函数能处置数组中的每个元素。
arsort : 将数组的值由大到小排序。
asort : 将数组的值由小到大排序。
count : 盘算变量或数组中的元素个数。
current : 前往数组中今朝的元素。
each : 前往数组中下一个元素的索引及值。
end : 将数组的外部指针指到最初的元素。
key : 获得数组中的索引材料。
ksort : 将数组的元素依索引排序。
list : 列出数组中元素的值。
next : 将数组的外部指针向后挪动。
pos : 前往数组今朝的元素。
prev : 将数组的外部指针往前挪动。
range : 创立一个整数局限的数组。
reset : 将数组的指针指到数组第一个元素。
rsort : 将数组的值由大到小排序。
shuffle : 将数组的按次弄混。
sizeof : 获知数组的巨细。
sort : 将数组排序。
uasort : 将数组依用户自定的函数排序。
uksort : 将数组的索引依用户自定的函数排序。
usort : 将数组的值依用户自定的函数排序。
array
创立一个新的数组。
语法: array array(...);
前往值:数组
函数品种: 材料处置
内容申明: 前往的参数是数组类型。参数可所以带有 => 运算子的索引。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")
);
参考 list()
array_walk
让利用者自订函数能处置数组中的每个元素。
语法: int array_walk(array arr, string func);
前往值: 整数
函数品种: 材料处置
内容申明 此函数使每一个数组元素 arr 依序与函数称号 func 绝对应。元素传送到函数 func 的第一个参数,若参数超越一个,则每次城市有正告信息。要处置正告信息,可在本函数后面加上 '@' 字符 (酿成 @array_walk);或是利用 error_reporting 函数。
注重: 利用者自订函数 func 真的会将数组元素 arr 依序代入,所以任何对元素所做的改动城市影响到数组自己。
利用典范
<?
$fruits = array("d"=>"lemon","a"=>"orange","b"=>"banana","c"=>"apple");
function test_alter( $item1 ) {
$item1 = 'bogus';
}function test_print( $item2 ) {
echo "$item2<br>\n";
}array_walk( $fruits, 'test_print' );
array_walk( $fruits, 'test_alter' );
array_walk( $fruits, 'test_print' );
?>
参考 each() list()
arsort
将数组的值由大到小排序。
语法: void arsort(array array);
前往值: 无
函数品种:材料处置内容申明这个函数将数组的值从头排序,由大至小分列。数组的索引亦随着值的按次而变化。当您在法式中需求从头收拾整顿数组值的按次时,就能够利用这个函数。
利用典范
底下的典范前往的了局为
fruits[a] = orange
fruits[d] = lemon
fruits[b] = banana
fruits[c] = apple。
咱们可以看到生果名 (数组值) 已按英文字母的按次由 z 往 a 从头排序,而索引亦随着值变化。
<?
$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]."\n";
}
?>
参考 asort() rsort() ksort() sort()
asort
将数组的值由小到大排序。
语法: void asort(array array);
前往值: 无
函数品种: 材料处置
内容申明 这个函数将数组的值从头排序,由小至大分列。数组的索引亦随着值的按次而变化。当您在法式中需求从头收拾整顿数组值的按次时,就能够利用这个函数。
利用典范
底下的典范前往的了局为
fruits[c] = apple
fruits[b] = banana
fruits[d] = lemon
fruits[a] = orange
咱们可以看到生果名 (数组值) 已按英
文字母的按次由 a 往 z 排序,而索引亦随着值变化。
<?
$fruits = array("d"=>"lemon","a"=>"orange","b"=>"banana","c"=>"apple");
asort($fruits);
for(reset($fruits); $key = key($fruits); next($fruits)) {
echo "fruits[$key] = ".$fruits[$key]."\n";
}
?>
参考 arsort() rsort() ksort() sort()
count
盘算变量或数组中的元素个数。
语法: int count(mixed var);
前往值: 整数
函数品种: 材料处置
内容申明 这个函数用来盘算数组的元素个数 (亦可将变量代入,只不外前往的整数将是 1)。变量还没有设置装备摆设时,前往值为 0。变量若不是数组,前往值为 1。
参考 sizeof() isset() is_array()
current
前往数组中今朝的元素。
语法: mixed current(array array);
前往值: 夹杂类型材料
函数品种: 材料处置
内容申明 申明: 每个数组变量都有一个外部指针,指到它的每个元素。另外,为了交互参考,数组有份一切元素的双向链结表。数组的外部指针指到本来拔出的元素上,直到法式履行到有修改数组指针的函数。函数 current() 复杂地前往数组元素中今朝指到的数组外部指针。它不会改动指针的值,若数组指针指到外部指针表外,则前往 false 的值。
注重: 若数组中包括空的元素 (0 或 "" 空字符串),则本函数会前往 false 值。如果今朝元素是个零值的空元素或是超越数组指针,了局固然是不决的 false 值。碰到这类情况,可使用 each() 函数会更合适。
参考 end() next() prev() reset()
each
前往数组中下一个元素的索引及值。
语法: array each(array array);
前往值: 数组
函数品种: 材料处置
内容申明 前往数组为今朝数组指针的 索引/值 对。前往的数组有四个元素,依序为 0, 1, 索引, 及值。前述的 0 与 索引 为数组的索引,1 与 值则为数组元素的值。
利用典范
典范一:
<?
$foo = array( "bob", "fred", "jussi", "jouni" );
$bar = each( $foo );
?>
下面的例子,前往数组 $bar 的 索引/值 为
0 => 0
1 => 'bob'
key => 0
value => 'bob'
典范二:
<?
$foo = array( "robert" => "bob", "seppo" => "sepi" );
$bar = each( $foo );
?>
这个的例子,前往数组 $bar 的 索引/值 为
0 => 'robert'
1 => 'bob'
key => 'robert'
value => 'bob'
典范三:
each() 函数最典范的例子是拿来与 list() 函数适用,以下例的 $http_post_vars 变量。
<?
echo "post 所送出的值为:<br>";
while ( list( $key, $val ) = each( $http_post_vars ) ) {
echo "$key => $val<br>";
}
?>
参考 current() key() list() next() prev() reset()
end
将数组的外部指针指到最初的元素。
语法: end(array array);
前往值: 无
函数品种: 材料处置
内容申明 本函数会改动数组的外部指针,它将指针指到最初一个元素上。
参考 current() each() next() reset()
key
获得数组中的索引材料。
语法: mixed key(array array);
前往值: 夹杂类型材料
函数品种: 材料处置
内容申明
本函数从今朝数组的指针,前往其索引
参考 current() next()
ksort
将数组的元素依索引排序。
语法: void ksort(array array);
前往值: 无
函数品种: 材料处置
内容申明
本函数将数组中的元素依索引排序,排序后的索引和值依然对应
利用典范
<?
$fruits = array("d"=>"lemon","a"=>"orange","b"=>"banana","c"=>"apple");
ksort($fruits);
for(reset($fruits); $key = key($fruits); next($fruits)) {
echo "fruits[$key] = ".$fruits[$key]."\n";
}
?>
下面的例子,前往的材料为
fruits[a] = orange
fruits[b] = banana
fruits[c] = apple
fruits[d] = lemon
参考 arsort() asort() sort() rsort()
list
列出数组中元素的值。
语法: void list(...);
前往值: 无
函数品种: 材料处置
内容申明 和 array 函数一样,不算是正轨的函数。list() 函数用在列出一切数组中的数值。
利用典范
上面的典范列出从 mysql 数据库前往的数组材料。
<table>
<tr>
<th>员工姓名</th>
<th>薪资</th>
</tr>
<?php
$result = mysql($conn, "select id, name, salary from employees");
while (list($id, $name, $salary) = mysql_fetch_row($result)) {
print(" <tr>\n".
" <td><a href=\"info.php3?id=$id\">$name</a></td>\n".
" <td>$salary</td>\n".
" </tr>\n");
}
?></table>
参考 each() array()
next
将数组的外部指针向后挪动。
语法: mixed next(array array);
前往值: 夹杂类型材料
函数品种: 材料处置
内容申明 这个函数前往数组下个元素的外部指针,若没有下个元素,则前往 false 值。固然,若是一个空的数组,它也前往 false 值。要准确地处置多是空的数组,可使用 each() 函数。此函数看起来像 current() 函数,分歧中央在于本函数使指针往后指到下一个元素,并前往新的指针处的元素值,意即指针后移,并前往下一个元素值。
参考 current() end() prev() reset()
pos
前往数组今朝的元素。
语法: mixed pos(array array);
前往值: 夹杂类型材料
函数品种: 材料处置
内容申明
此函数其实就是 current() 函数。
参考
end() next() prev() reset()
数组处置函数库
prev
将数组的外部指针往前挪动。
语法: mixed prev(array array);
前往值: 夹杂类型材料
函数品种: 材料处置
内容申明 这个函数前往数组前一个元素的外部指针,若没有前一个元素,则前往 false 值。固然,若是一个空的数组,它也前往 false 值。要准确地处置多是空的数组,可使用 each() 函数。此函数有点像 next() 函数,只是 prev() 函数是将指针往前移,而 next() 函数是将指针往后移。
参考 current() end() next() reset()
range
创立一个整数局限的数组。
语法: array range(int low, int high);
前往值: 数组
函数品种: 材料处置
内容申明 此函数创立一个由小到大的一连整数数组。在 shuffle() 函数有利用典范
参考 shuffle()
reset
将数组的指针指到数组第一个元素。
语法: mixed reset(array array);
前往值: 夹杂类型材料
函数品种: 材料处置
内容申明 本函数将数组的指针重设,将指针改指到数组的第一个元素。前往值的内容也是数组的第一个元素。
利用典范
技能: kk@shonline.de 指出 (30-jul-1998),当数组的材料不敷不乱时,利用 reset() 会有正告信息。最常产生的时分是处置 html 表单(form)的输出材料时,若用户输出的材料不敷充份,或用户居心增删输出 (input) 字段,就有能够会有正告信息。用 @reset() 的体例可以使正告信息不呈现 (在 reset() 前加 @),不外这只是掩耳盗铃的体例;要斧底抽薪的办法是利用 if (isset()) 的体例 (拜见 4.48.14 isset() 函数),以下例
<?
if (isset($form_array)) {
reset($form_array);
while (list($k, $v) = each($form_array)) {
do_something($k, $v);
}
}
?>
参考 current() each() next() prev()
rsort
将数组的值由大到小排序。
语法: void rsort(array array);
前往值: 无
函数品种: 材料处置
内容申明
本函数将数组依由大到小的体例重排。
利用典范
<?
$fruits = array("lemon","orange","banana","apple");
rsort($fruits);
for(reset($fruits); list($key,$value) = each($fruits); ) {
echo "fruits[$key] = ".$value."\n";
}
?>
处置后的了局为
fruits[0] = orange
fruits[1] = lemon
fruits[2] = banana
fruits[3] = apple
参考 arsort() asort() ksort() sort() usort()
shuffle
将数组的按次弄混。
语法: void shuffle(array array);
前往值: 无
函数品种: 材料处置
内容申明 本函数将数组以随机的体例使全体元素从头乱排。
利用典范
<?
$numbers = range(1,20);
srand(time());
shuffle($numbers);
while (list(,$number) = each($numbers)) {
echo "$number ";
}
?>
注重:
ccunning@math.ohio-state.edu 指出 (31-may-1999),在 solaris 上因为受了 libc 函数库的影响,会使本函数呈现成绩。今朝处理的体例以下面的例子。(注: 也许以后新的 php 版本会修改这个成绩。)
<?
function myshuffle($array) {
mt_srand((double) microtime()*1000000);
$num = count($array);
for ($i=0; $i<$num-1; $i++) {
$n = mt_rand($i+1,$num);
$temp = $array[$n];
$array[$n] = $array[$i];
$array[$i] = $temp;
}
}
$array = array(1,2,3,4,5,6,7,8,9,10);
myshuffle(&$array);
while (list(,$var)=each($array)) {
echo $var . " ";
}
?>
参考 arsort() asort() ksort() rsort() sort() usort()
sizeof
获知数组的巨细。
语法: int sizeof(array array);
前往值: 整数
函数品种: 材料处置
内容申明
本函数以整数类型前往数组的元素个数。
参考 count()
sort
将数组排序。
语法: void sort(array array);
前往值: 无
函数品种: 材料处置
内容申明 本函数将数组依由小到大的体例重排。
利用典范
<?
$fruits = array("lemon","orange","banana","apple");
sort($fruits);
for(reset($fruits); list($key,$value) = each($fruits); ) {
echo "fruits[$key] = ".$value."\n";
}
?>
前往的了局为
fruits[0] = apple
fruits[1] = banana
fruits[2] = lemon
fruits[3] = orange
参考 arsort() asort() ksort() rsort() usort()
uasort
将数组依用户自定的函数排序。
语法: void uasort(array array, function cmp_function);
前往值: 无
函数品种: 材料处置
内容申明 本函数将数组依用户自定的体例重排,固然元素的索引和值依然坚持对应的关系。当您感觉需求自行设计排序的体例时,可以先自订处置函数,再利用本函数将数组值排序。
参考 arsort() asort() ksort() rsort() sort() uksort()
uksort
将数组的索引依用户自定的函数排序。
语法: void uksort(array array, function cmp_function);
前往值: 无
函数品种: 材料处置
内容申明 本函数将数组的索引依用户自定的体例重排,cmp_function 即用户自行开辟的函数。
利用典范
<?
function mycompare($a, $b) {
if ($a == $b) return 0;
return ($a > $b) ? -1 : 1;
}
$a = array(4 => "four", 3 => "three", 20 => "twenty", 10 => "ten");
uksort($a, mycompare);
while(list($key, $value) = each($a)) {
echo "$key: $value\n";
}
?>
下面的法式前往材料为
20: twenty
10: ten
4: four
3: three
参考 arsort() asort() ksort() rsort() sort() uasort()
usort
将数组的值依用户自定的函数排序。
语法: void usort(array array, function cmp_function);
前往值: 无
函数品种: 材料处置
内容申明
本函数将数组的值依用户自定的体例重排。若法式中需求利用特别的排序体例,则可使用这个函数。
利用典范
<?
function cmp($a,$b) {
if ($a == $b) return 0;
return ($a > $b) ? -1 : 1;
}
$a = array(3,2,5,6,1);
usort($a, cmp);
while(list($key,$value) = each($a)) {
echo "$key: $value\n";
}
?>
此例的前往值为
0: 6
1: 5
2: 3
3: 2
4: 1
参考 arsort() asort() ksort() rsort() sort()
理解网站这一概念之后不难看出,任何网站都是由网页组成的,也就是说想完成网站,必须先学会做网页,因此必须要掌握了HTML,才能为今后制作网站打下基础。 |
|