PHP常用函数分享,实时更新(常用)

5 篇文章 0 订阅

1. array_keys:返回数组中所有键名的一个新数组,

	//array_keys(array,value,strict)
	$a=array("Volvo"=>"XC90","BMW"=>"X5","Toyota"=>"Highlander");
	print_r(array_keys($a));
	//Array ( [0] => Volvo [1] => BMW [2] => Toyota )
?>

array_values():以获取数组中所有元素的值

   $array = array(
        'name'  => 'C语言中文网',
        'url'   => 'http://c.biancheng.net/php/',
        'info'  =>  array(
            'id'      => 1234,
            'article' => 'array_values() 函数'
        )
    );
    print_r(array_values($array));
   // 运行结果:
    /* Array
	(
	    [0] => C语言中文网
	    [1] => http://c.biancheng.net/php/
	    [2] => Array
	        (
	            [id] => 1234
	        )
) */

2.array_merge:把两个数组合并为一个数组;重构数组键值

	/*array_merge(array1,array2,array3...)
	array1	必需。规定数组。
	array2	可选。规定数组。
	array3	可选。规定数组...
	*/
	$a1=array("red","green");
	$a2=array("blue","yellow");
	print_r(array_merge($a1,$a2));
	//Array ( [0] => red [1] => green [2] => blue [3] => yellow )
	
	$a=array("155151"=>"red",4=>"green");
    print_r(array_merge($a));
    //Array([0] => red [1] => green)
?>

3.sprintf:把百分号(%)变成一个作为参数用来传递数据的变量

sprintf函数详解
指的是字符串格式化命令,主要功能是把格式化的数据写入某个字符串中。

	$number = 2;
	$str = "Shanghai";
	$txt = sprintf("There are %u million cars in %s.",$number,$str);
	echo $txt;
	//There are 2 million cars in Shanghai.
?>

4.implode()和 explode()

  • implode(): 把数组元素组合为一个字符串;
  • explode():把一个字符串整合为一个数组,函数返回字符串的数组。
$arr = array('Hello','World!','Beautiful','Day!');
echo implode(" ",$arr);
//Hello World! Beautiful Day!

<?php
$str = "Hello world. I like php!";
print_r (explode(" ",$str));
//Array ( [0] => Hello [1] => world. [2] => I [3] => like [4] => php! )
 //explode()更多实例用法
 $requestData['list'] = "1,2,3,5,6,8"
 $requestData['list'] = explode(",",$requestData['list']);
 dump($requestData['list'] =);
 //打印结果类似这种
 array(16) {
  [0] => string(1) "1"
  [1] => string(1) "2"
...
注意:explode(separator,string,limit),limit可以限制个数
}

5.unset():用来销毁给定的变量

  • 如果在函数中 unset() 一个全局变量,则只是局部变量被销毁,而在调用环境中的变量将保持调用 unset() 之前一样的值。
    // 销毁单个数组元素 unset ($bar[‘quux’]);

6.isset():检测变量是否设置

我的理解:PHP中empty、is_null、isset的区别
例子参考
123

7.reset():将内部指针指向数组中的第一个元素,并输出。类似的

8.list():用于在一次操作中给一组变量赋值。

$my_array = array("Dog","Cat","Horse");

list($a, , $c) = $my_array;
echo "我在这里只用了 $a$c 变量。";
//打印结果
我在这里只用了 Dog 和 Horse 变量。

9 .array_diff(),比较两个数组的差值,也可以用来去除数组中的某些特定值

<?php
$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$a2=array("e"=>"red","f"=>"green","g"=>"blue");

$result=array_diff($a1,$a2);
print_r($result);
//执行结果
Array ( [d] => yellow )

//真用到了,去除数组中的某个值
$requestData = ['','1','2','全部'];
$requestData = array_diff($requestData, ["", '全部']);
dump($requestData );
//执行结果
array(2) {
  [1] => string(1) "1"
  [2] => string(1) "2"
}
?>

10.array_push,函数向第一个参数的数组尾部添加一个或多个元素(入栈),然后返回新数组的长度

$json =array(2) {
  [0] => array(11) {
    ["id"] => string(32) "e30f0029d61845bb9dc7e395b68b9d39"
    ["msisdn"] => string(11) "18754124756"
    ["executeWay"] => string(6) "系统"
    ["operatorCity"] => string(6) "济南"
    ["packageType"] => string(6) "月卡"
    ["cardEndDate"] => string(10) "2021-09-30"
  }
  [1] => array(11) {
    ["id"] => string(32) "f6c3b4be219411ec82590242ac11000b"
    ["msisdn"] => string(11) "18754124756"
    ["account"] => string(6) "test12"
    ["operatorCity"] => string(6) "济南"
    ["packageType"] => string(6) "月卡"
    ["cardEndDate"] => string(10) "2021-09-30"
  }
}
$id = array();
//遍历数据,获取他们的id
 foreach ($json_data as $value) {
            array_push($id, $value['id']);
        } 
dump($id);exit();
//打印出来的结果
array(2) {
  [0] => string(32) "e30f0029d61845bb9dc7e395b68b9d39"
  [1] => string(32) "f6c3b4be219411ec82590242ac11000b"
}

11.strncmp(),比较两个字符串。

注释:strncmp() 是二进制安全的,且对大小写敏感。
在这里插入图片描述

<!DOCTYPE html>
<html>
<body>

<?php
echo strncmp("China","China",6);//0
echo "<br>";
echo strncmp("China","CHINA",6);//1
?>
  
</body>
</html>

12.substr() ,返回字符串的一部分。

substr(string,start,length)

参数 描述

  1. string 必需。规定要返回其中一部分的字符串。
  2. start 必需。规定在字符串的何处开始。 正数 - 在字符串的指定位置开始 负数 - 在从字符串结尾开始的指定位置开始 0 - 在字符串中的第一个字符处开始
  3. length 可选。规定被返回字符串的长度。默认是直到字符串的结尾。 正数 - 从 start 参数所在的位置返回的长度 负数 - 从字符串末端返回的长度
<!DOCTYPE html>
<html>
<body>

<?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>";
 
Hello worl
ello wor
Hello
world
Hello worl
ello wor
Hello
world
  
</body>
</html>

12,substr_replace(),函数把字符串的一部分替换为另一个字符串

echo substr_replace("Hello world","Shanghai",6);//输出:Hello Shanghai
//在 "world" 开头插入 "Hello":
echo substr_replace("world","Hello ",0,0);//Hello world
//一次性替换多个字符串。把每个字符串中的 "AAA" 替换成 "BBB":
$replace = array("1: AAA","2: AAA","3: AAA");
echo implode("<br>",substr_replace($replace,'BBB',3,3));
/*
1: BBB
2: BBB
3: BBB*/

13,mb_strlen()返回字符串的长度,

与 strlen 不同的时,它可以通过设置字符编码从而返回对应的字符数,很好的处理了中文字符串的长度问题。

 if(isset($requestData['name']) && mb_strlen($requestData['name'],"utf-8") > 64){
                return jsonReturn([], '最多可输入64个中文字符', 200);die;
            }

14,php获取两个数组相同元素,array_intersect和array_intersect_assoc

  • 这两个方法的功能基本一致,都是返回两个数组(也可以是多个数组)中都存在的元素,
  • 不同的是,前者只考虑数组中元素的 value 一致就认为两者相同,而后者需要 key 和 value 都一致才认为两者相同
$array1 = array('1', 'a' => 'aaaaaa', 'b' => 'bbbbbb', 'c');
$array2 = array('a' => 'aaaaaa', 'c' => 'bbbbbb', 'c', '1');
 
var_dump(array_intersect($array1,$array2));
1
运行上面的代码会得到如下结果:
array(4) {
  [0]=>
  string(1) "1"
  ["a"]=>
  string(6) "aaaaaa"
  ["b"]=>
  string(6) "bbbbbb"
  [1]=>
  string(1) "c"
}
而使用方法 array_intersect_assoc()将会得到如下结果:
array(1) {
  ["a"]=>
  string(6) "aaaaaa"
}

15,比较两个数组中的不同元素,array_diff和array_diff_assoc

  • 这两个方法的基本功能也是一致的,返回第一个数组中有,但是其它数组没有的元素。
  • 前者只比较值,后者同时比较 key 和 value。
<?php
 
$array1 = array('1', 'a' => 'aaaaaa', 'b' => 'bbbbbb', 'c');
$array2 = array('a' => 'aaaaaa', 'c' => 'bbbbbb', 'c', '1');
 
var_dump(array_diff($array1,$array2));
 上面代码的运行结果为:
array(0) {
}
 而如果把最后一行更换为  var_dump(array_diff_assoc($array1, $array2));   将得到如下结果:
array(3) {
  [0]=>
  string(1) "1"
  ["b"]=>
  string(6) "bbbbbb"
  [1]=>
  string(1) "c"
}

16. array_pop(),删除数组中的最后一个元素,返回值为被删除的元素

$a=array("red","green","blue");
print(array_pop($a))//blue
array_pop($a);
print_r($a);//red,green
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值