array_column()函数(PHP 5.5+):返回输入数组中某个单一列的值:
语法:
array_column(array,column_key,index_key);
实例:
<?php
// 表示由数据库返回的可能记录集的数组
$a = array(
array(
'id' => 5698,
'first_name' => 'Bill',
'last_name' => 'Gates',
),
array(
'id' => 4767,
'first_name' => 'Steve',
'last_name' => 'Jobs',
),
array(
'id' => 3809,
'first_name' => 'Mark',
'last_name' => 'Zuckerberg',
)
);
$last_names = array_column($a, 'last_name', 'id');
print_r($last_names);
?>
输出:
参考w3school array_column
array_merge()函数(PHP 4+):把一个或多个数组合并成一个数组:
注意点:
1.若两个或多个数组元素有相同的键名,则最后的元素会覆盖其他元素。
2.若仅向array_merge()输入一个数组,且键名是整数,则该函数将返回带有整数键名的新数组,其键名以0开始进行重新索引。
3.该函数与array_merge_recursive()之间的不同点是在处理两个或多个数组元素有相同键名情况,array_merge_recursive()不会进行键名覆盖,而是将多个相同键名的值递归组成一个数组
语法:
array_merge(array1,array2,array3...)
实例:
<?php
$a1=array("a"=>"red","b"=>"green");
$a2=array("c"=>"blue","b"=>"yellow");
print_r(array_merge($a1,$a2));
?>
输出:
后面的同名键名覆盖了前面的。
implode()函数(PHP 4+):把数组元素组合成字符串
注意点:
1.implode()函数接受两种参数顺序,但由于历史原理,explode()是不行的,必须保证seprator参数在string参数之前才行。
2.implode()函数的seprator参数是可选的,但是为了向后兼容,推荐使用两个参数。
3.该函数是二进制安全的。
语法:
implode(separator,array)
实例:
<?php
$arr = array('Hello','World!','I','love','Shenzhen!');
echo implode(" ",$arr)."<br>";
echo implode("+",$arr)."<br>";
echo implode("-",$arr)."<br>";
echo implode("X",$arr);
?>
输出:
explode()函数(PHP 4+):把字符串打散为数组
注意点:
1.参数separator不能是空字符串
2.该函数是二进制安全的
explode(separator,string,limit)
实例:
<?php
$str = "Hello world. I love Shanghai!";
print_r (explode(" ",$str));
?>
输出:
参考w3school explode
is_array()函数(PHP4+): 判断一个变量是否是数组
语法:
bool is_array ( mixed $var )
若var为数组,则返回TRUE,反之返回FALSE
实例:
<?php
$yes = array('this', 'is', 'an array');
echo is_array($yes) ? 'Array' : 'not an Array';
echo "<br>";
$no = 'this is a string';
echo is_array($no) ? 'Array' : 'not an Array';
?>
输出:
参考网址
array_keys(PHP4+):返回数组的所有键或键的子集
语法:
array array_keys ( array $array [, mixed $search_value = NULL [, bool $strict = FALSE ]] )
参数:
array:包含要返回键的数组
search_value:若指定的话,只包含这些值的键才会返回
strict:决定在search过程中是否使用严格比较===
返回值:
返回所有键的一个数组。
实例:
<?php
$array = array(0 => 100, "color" => "red");
print_r(array_keys($array));
echo '<br>';
$array = array("blue", "red", "green", "blue", "blue");
print_r(array_keys($array, "blue"));
echo '<br>';
$array = array("color" => array("blue", "red", "green"),
"size" => array("small", "medium", "large"));
print_r(array_keys($array));
?>
输出:
参考网址
unset()(PHP4+):销毁指定的变量
语法:
void unset ( mixed $var [, mixed $... ] )
在函数内部的unset()销毁变量的行为根据变量类型的不同而不同。若在函数内unset一个全局变量,则只有局部变量会被销毁,在调用环境内的变量将会保持在unset被调用前的值。
实例:
<?php
function destroy_foo()
{
global $foo;
unset($foo);
}
$foo = 'bar';
destroy_foo();
echo $foo;
?>
输出:
参考网址
addslashes()(PHP4+):用斜线引用字符串
语法:
string addslashes ( string $str )
返回一个带斜线的字符串,而该字符串是需要原样输出的,有以下字符:
1.单引号 '
2.双引号 "
3.反斜杠 \
4.NUL
实例:
<?php
$str = "O'Reilly?";
eval("echo '" . addslashes($str) . "';");
?>
输出:
参考网页
empty()(PHP 4+):判断一个变量是否为空
语法:
bool empty ( mixed $var )
若变量不存在或其值为FALSE,则被判定为空,若变量不存在,则empty()不会生成警告。
实例:
<?php
$var = 0;
// Evaluates to true because $var is empty
if (empty($var)) {
echo '$var is either 0, empty, or not set at all<br>';
}
// Evaluates as true because $var is set
if (isset($var)) {
echo '$var is set even though it is empty';
}
?>
输出:
参考网址
stripslashes()函数(PHP 4+):去引用一个被引用的字符串
语法:
string stripslashes ( string $str )
返回一个去掉带反斜杠的字符串,比如\'变成了',双反斜杠\\变成但反斜杠\
实例:
<?php
$str = "Is your name O\'reilly?";
// Outputs: Is your name O'reilly?
echo stripslashes($str);
?>
输出:
参考网址
strpos()函数(4+):查找字符串在另一个字符串中第一次出现的位置
注意:
1.strpos()对大小写敏感
2.函数是二进制安全的
语法:
strpos(string,find,start)
返回值:
返回字符串在另一字符串中第一次出现的位置,若没有找到字符串则返回FALSE,字符串位置从0开始,不是从1开始。
实例:
<?php
echo strpos("You love php, I love php too!","php");
?>
输出:
参考网址
substr()函数(PHP 4+):返回字符串的一部分
语法:
substr(string,start,length)
若start参数是负数且length小于等于start,则length为0
实例:
<?php
echo substr("Hello world",0,10)."<br>";
echo substr("Hello world",1,8)."<br>";
echo substr("Hello world",0,5)."<br>";
echo substr("Hello world",6,6)."<br>";
echo substr("Hello world",0,-1)."<br>";
echo substr("Hello world",-10,-2)."<br>";
echo substr("Hello world",0,-6)."<br>";
echo substr("Hello world",-2-3)."<br>";
?>
输出:
参考网址
strtoupper()函数(4+):把字符串转换为大写
语法:
strtoupper(string)
实例:
<?php
echo strtoupper("Hello WORLD!");
?>
输出:
参考网址
trim()函数(PHP 4+):移除字符串两侧的空白字符或者预定义字符
语法:
trim(string,charlist)
实例:
<?php
$str = "Hello World!";
echo $str . "<br>";
echo trim($str,"Hed!");
?>
输出:
详细参考网页
in_array()(PHP 4+):搜索数组中是否存在指定值,若存在返回true,否则返回false。
语法:
in_array(search,array,type)
实例:
<?php
header("Content-type: text/html; charset=utf-8");
$people = array("Bill", "Steve", "Mark", "David");
if (in_array("Mark", $people))
{
echo "匹配已找到";
}
else
{
echo "匹配未找到";
}
?>
输出:
参考网址
str_replace()(PHP 4+):以其他字符替换字符串中的一些字符,区分大小写。
语法:
str_replace(find,replace,string,count)
注意点:
1.若搜索字符串为数组,则返回数组
2.若搜索字符串为数组,则它将对数组中的每个元素进行查找和替换
3.若同时需要对数组进行查找和替换,且需要执行替换的元素少于查找到的元素数量,则多余元素将用空字符串进行替换
4.若查找的是数组,而替换的是字符串,则替代字符串将对所有查找到的值起作用
实例:
<?php
echo str_replace("world","Shenzhen","Hello world!");
?>
输出:
参考网址
preg_replace()函数:该函数执行一个正则表达式的搜索和替换
语法:
mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )
搜索subject中匹配pattern部分,以replacement进行替换。
参数:
1.$pattern:要搜索的模式,可以是字符串或一个字符串数组
2.$replacement:用于替换的字符串或字符串数组
3.$subject:要搜索替换的目标字符串或字符串数组
4.$limit:可选,对每个模式用于每个subject字符串的最大可替换次数,默认-1,无限制。
5.$count:可选,为替换执行的次数
返回值:
若subject是一个数组,则preg_replace()返回一个数组,其他情况下返回一个字符串;若匹配被查找到,替换后的subject被返回,其他情况下,返回没有改变subject。若发生错误,返回NULL。
实例:
<?php
$string = 'google 123, 456';
$pattern = '/(\w+) (\d+), (\d+)/i';
$replacement = 'runoob ${2},$3';
echo preg_replace($pattern, $replacement, $string);
?>
输出:
参考网址
正则表达式学习网址
=========================================>