'Beijing'=>2008 );
echo '原数组:'; echo '
';';print_r($olympic); echo '
$nol = array_flip($olympic); echo '
';
echo '数组元素和索引对调之后:'; echo '
'; print_r($nol); ?>效果如下:
20.快速填充数组元素
PHP提供函数快速填充数组,将数组中的某些或所有元素都置成通一个值,这个函数是array_fill(),其语法如下所示。
array array_fill(int $start, int $num, mixed $value)
函数array_fill()有3个参数:其中参数$start指定要填充元素的开始索引,参数$num表示将$num个数组元素以参数$value填充。
$arr = array_fill(2, 4, 'orange'); echo '
';print_r($arr); ?>
效果如下:
21.统计数组元素出现次数
函数cout()用来计算整个数组元素的个数,而函数array_count_values()用来统计数组中各元素出现的次数,即数组中各元素的个数。函数array_count_values()的语法如下所示。
array array_count_values(array $arr)
该函数返回一个数组,这个数组把参数数组$arr中的元素作为索引,元素出现的次数作为对应索引的值。 函数array_count_values()统计出数组$arr中,各个元素出现的次数,而且从这个执行结果可以看出,函数array_count_values()统计元素时,是区分元素大小写的,比如Say和say会分别被统计。
$say = array( 'Say', 'you', 'say', 'me', 'Say', 'it',
'together' );
echo '原数组:'; echo '
'; print_r($say); echo '';$say_tmp = array_count_values($say); echo '
';echo '统计结果如下:'; echo '
';print_r($say_tmp); ?>
效果如下:
22.检查数组索引是否存在
PHP提供函数array_key_exists()检查给定的索引是否存在于数组中,该函数语法如下所示。 bool array_key_exists(mixed $key, array $search)
该函数查找由参数$key指定的索引,是否存在于由参数$sarch指定的数组中,如果存在,该函数返回TRUE,否则或者出错时,该函数返回FALSE。参数$key可以是任何能作为数组索引的值。
23.取得数组中的所有索引
PHP提供函数array_keys()用来获取数组中所有的索引名,该函数语法如下所示。
array array_keys(array $arr [, mixed $search_value [, bool $strict]])
该函数会将参数数组$arr中,所有的索引名返回到一个数组中。参数search_value是可选的,如果指定该参
数,则函数array_keys只返回该元素值对应的索引名,可选参数$strict用来进行全等比较。
$arr1 = array( 0=>100,
\=>\ );
$arr2 = array( 'Sunday', 'Saturday', 'Monday', 'Sunday', 'Sunday' );
echo '
';echo '数组arr1的全部索引是:'; print_r(array_keys($arr1));
echo '数组arr2中元素”Sunday“全部索引是:'; echo '
';print_r(array_keys($arr2,'Sunday')); ?>
效果如下:
24.用回调函数处理数组
PHP支持回调函数操作给定数组的元素上,这也是PHP数组函数的强大功能之一。函数array_map()就可以完成这样的工作,它将回调函数作用到给定数组的元素上。其语法如下所示。 array array_map(callback_func, array $arr1 [, array ...])
函数array_map()返回一个数组,该数组包含了参数$arr1中的所有元素经过函数callback_func处理过之后的元素。callback接受参数的数目应该和传递给array_map()函数的数组数目一致。
function cube($n) {
$cb = $n*$n*$n; return $cb; }
$a = array(1, 2, 3, 4, 5); $b = array_map(\, $a);
echo '计算原数组各元素的立方,结果如下:';
echo '
'; echo '';print_r($b); ?>
效果如下:
25.in_array:该函数可以判断某个值是否存在于数组中。如果在数组中找到该值,函数返回TRUE,否则返
回FALSE。
key:该函数可以获取数组中当前单元的索引值。
$planet = array( 'Earth', 'Venus', 'Mars', 'Jupiter', 'Saturn' );
$temp = 'mars';
if(in_array('Mars',$planet)) {
echo 'Mars 存在于数组$planet中'; echo '
'; echo '
'; }if(in_array($temp,$planet)) {
echo $temp.'存在于数组$planet中'; echo '
'; echo '
'; } else {echo $temp.'不存在于数组$planet中'; echo '
'; echo '
'; } ?>效果如下:
$planet = array( 'Eth'=>'Earth', 'Vns'=>'Venus', 'Mrs'=>'Mars', 'Jpt'=>'Jupiter', 'Stn'=>'Saturn' );
end($planet);
echo '当前元素的索引为:'.key($planet); echo '
'; echo '
';echo '当前元素的值为:'.end($planet); ?>
效果如下:
14.获取HTML的变量 HTML中的设计:
Transitional//EN\\>
Insert title here
name:
sex:
Email:
Index.php文件:
$user =$_POST['User'];
echo \$user[name]
\\n\; echo \$user[sex]
\\n\; echo \$user[Email]
\\n\; ?> 效果: