php数组函数

菠菜 posted @ 2009年4月17日 22:10 in JavaScript , 1954 阅读

增加元素 $arrayname[ ]
示例:

 

<?php
$arr = array('phpfans','php','MySQL','javascript');
$arr[] = 'html';//增加一个元素插到最后
$arr['css'] = 'css';//再增加一个元素插到最后
print_r($arr);
?>

 

 

输出

Array
(
    [0] => phpfans
    [1] => php
    [2] => MySQL
    [3] => javascript
    [4] => html
    [css] => css
)

删除元素 unset()

 

用unset()删除一个数组变量,即使是数字索引,此函数也不会重新对数组索引

 

示例:

 

<?php 
$arr 
= array(
   
'phpfans' => 'www.phpfans.net',
   
'php' => 'www.php.net',
   
'mysql' => 'www.mysql.com',
   
'apache' => 'www.apache.org'
);

unset(
$arr['php']);
print_r($arr);
?> 

 

输出:

Array
(
    [phpfans] => www.phpfans.net
    [mysql] => www.mysql.com
    [apache] => www.apache.org
)

示例:

 

<?php 
$arr 
= array('phpfans','php','MySQL','javascript');

unset(
$arr[1]);
print_r($arr);
?> 

 

输出:

Array
(
    [0] => phpfans
    [2] => MySQL
    [3] => javascript
)

索引保持不变

 

array_push()

 

array_push()函数将variable增加到target_array的末尾,成功时返回TRUE,否则返回FALSE.

 

这个和栈的入栈相似.可以为此函数传递多个变量作为输入参数,同时向数组压入多个变量(元素).

 

示例:

 

<?php 
$arr 
= array('phpfans','php','MySQL','javascript');
array_push($arr,'html','css');
print_r($arr);
?> 

 

输出:

Array
(
    [0] => phpfans
    [1] => php
    [2] => MySQL
    [3] => javascript
    [4] => html
    [5] => css
)

注: 如果用 array_push() 来给数组增加一个单元,还不如用 $array[] = ,因为这样没有调用函数的额外负担.

 

注: 如果第一个参数不是数组,array_push() 将发出一条警告.这和 $var[] 的行为不同,后者会新建一个数组.

 

array_unshift ( array &$array, mixed $var [, mixed $...] )

 

array_unshift() 将传入的单元插入到 array 数组的开头.注意单元是作为整体被插入的,因此传入单元将保持同样的顺序.所有的数值键名将修改为从零开始重新计数,所有的文字键名保持不变.函数的返回值是 array 数组新的单元数目.

 

示例:

 

<?php
//PHPfans站系列教程:
//http://www.phpfans.net/bbs/forumdisplay.php?fid=25
$arr = array(
   
=> 'www.php.net',
   
=> 'www.mysql.com',
   
=> 'www.apache.org'
);
$phpfans 'www.phpfans.net';
$num array_unshift($arr,$phpfans);
echo 
"新的数组的长度是:".$num;
echo 
"\r\n\r\n";
print_r($arr);
?> 

 

输出:

新的数组的长度是:4

Array
(
    [0] => www.phpfans.net
    [1] => www.php.net
    [2] => www.mysql.com
    [3] => www.apache.org
)

array_pop()

 

array_pop()函数返回target_array的最后一个元素(出栈),并在结束后重置数组的指针.

 

<?php 
$arr 
= array(
   
'phpfans' => 'www.phpfans.net',
   
'php' => 'www.php.net',
   
'mysql' => 'www.mysql.com',
   
'apache' => 'www.apache.org'
);

echo 
array_pop($arr);
echo 
"\n\n";
print_r($arr);
?> 

 

输出:

www.apache.org

Array
(
    [phpfans] => www.phpfans.net
    [php] => www.php.net
    [mysql] => www.mysql.com
)

array_shift ( array &$array )

 

array_shift() 将 array 的第一个单元移出并作为结果返回(出列),将 array 的长度减一并将所有其它单元向前移动一位.所有的数字键名将改为从零开始计数,文字键名将不变.如果 array 为空(或者不是数组),则返回 NULL.使用本函数后会重置数组指针.

 

示例: 数字键值

 

<?php 
//PHPfans站系列教程:
//http://www.phpfans.net/bbs/forumdisplay.php?fid=25
$arr = array('phpfans','php','MySQL','javascript','html','css');
echo 
array_shift($arr);
echo 
"\n\n";
print_r($arr);
?> 

 

输出:

phpfans

Array
(
    [0] => php
    [1] => MySQL
    [2] => javascript
    [3] => html
    [4] => css
)

示例: 键值为字符串

 

<?php 
$arr 
= array(
   
'phpfans' => 'www.phpfans.net',
   
'php' => 'www.php.net',
   
'mysql' => 'www.mysql.com',
   
'apache' => 'www.apache.org'
);
echo 
array_shift($arr);
echo 
"\r\n\r\n";
print_r($arr);
?> 

 

输出:

www.phpfans.net

Array
(
    [php] => www.php.net
    [mysql] => www.mysql.com
    [apache] => www.apache.org
)

array array_pad ( array $input, int $pad_size, mixed $pad_value )

 

array_pad()函数会修改target数组,将其大小增加到length指定的长度.这是通过在数组中填充由pad_value指定的值实现的. 如果pad_value是正数,将填充到数组的右侧(后面);如果为负,则将填充到左侧(前面).如果length等于或小于当前大小,将不做任何操作. 示例如下:

 

这是手册中的例子

 

<?php
$input 
= array(12109);

$result array_pad($input50);
// result is array(12, 10, 9, 0, 0)

$result array_pad($input, -7, -1);
// result is array(-1, -1, -1, -1, 12, 10, 9)

$result array_pad($input2"noop");
// not padded
?>

 


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter