系统函数

一、有关输出的函数

echo print 语言结构
print_r 打印复杂变量的信息
如果想捕捉print_r的输出,可以设置第二个参数为true,print_r 不打印结果,而是返回其输出。
在这里插入图片描述var_dump()

二、时间日期函数

1. time()时间戳

返回从unix纪元(格林威治时间1970一月一日)到当前时间的秒数。
10位整数数字。
常用语保存文章的发布时间,商品的发布时间,修改时间,删除时间。

在这里插入图片描述

2. date()格式化时间戳。

date(格式化字符串,[,时间戳]);
在这里插入图片描述

3. microtime()

返回当前的微秒数,及时间戳字符串。
当使用true参数时,返回对应的浮点数。

在这里插入图片描述

三、数组常用函数

1. max(),min(),count()

<?php
	/*var_dump($_SERVER);*/
	echo max(1,23,3,5);//23
	echo "<br>";
	echo max (array(2,4,5));//5
	echo "<br>";
	echo count(array(2,4,5));//3

2.range(),array_merge(),array_rand(),shuffle

2.1	range(起始值,结束值):返回位于起始元素和终止元素之间形成的新数组。
<?php
	$arr =  range(10,20);
	print_r($arr);
<?php
	$arr = range(10,20);
	$a = range('a','z');
	$b = range('A','Z');
	print_r($a);
	print_r($b);
2.2 array_merge()数组合并。
<?php
$arr1 = ['name'=>'libai',
			'sex'=>'nan',
			0=>'a',
			3=>'c'];
$arr2 = ['name'=>'dufu',
			'add'=>'beijing',
			0=>'a'];
$arr = array_merge($arr1,$arr2);
print_r($arr);

数组合并下标冲突解决规则:
字符串下标,后面的元素覆盖前面的元素。
整数下标,重新建立下标索引

<?php
$arr = array_merge(range('a','z'),
			range('A','Z'),
			range(0,9));
print_r($arr);

2.3 array_rand(数组,随机取出元素的个数)。
随机取出数组内元素,返回随机数组的下标
如果随机取出一个,返回下标。
如果取出多个,返回下标数组。
<?php
	$arr = range('a','z');
	$index = array_rand($arr,1);
	var_dump($index);
	$indexs = array_rand($arr,2);
	var_dump($indexs);

2.4	shuffle(数组):打乱数组。
打乱成功返回true, 打乱失败返回false。
<?php
	$arr = range('a','z');
	$index = array_rand($arr,1);
	$indexs = array_rand($arr,4);
	print_r($indexs);
	shuffle($indexs);
	print_r($indexs);

3、is_array():判断变量是否是数组类型

<?php
	$array =10;
	if(is_array($array)){
		echo"是数组";
	}else{
		echo"不是数组";
	}

4、键值相关函数

4.1、array_keys()
返回数组中元素的键名组成的数组。
 	<?php
	$stu = ['name'=>'libai',
		'sex'=>'nan',
		'age'=>20];
	$keys = array_keys($stu);
	print_r($keys);
4.2、array_values()
返回数组中所有元素的值组成的数组。
<?php
	$stu = ['name'=>'libai',
		'sex'=>'nan',
		'age'=>20];
	// $keys = array_keys($stu);
	// print_r($keys);
	$values = array_values($stu);
	print_r($values);
4.3、array_combine(键数组,值数组)
创建一个数组,用键数组的值作为键名。
值数组的值作为值。
<?php
	$keys=['name','sex','age'];
	$values= ['libai','nan',67];
	$res = array_combine($keys,$values);
	var_dump($res);
4.4、in_array(查找的值,数组)。
查找数组中是否包含某个值。
<?php
	$array = array('name'=>'李白',
					'杜甫',
					'白居易',
					'tom',
					123
	);
	var_dump(in_array('李白',$array));
	echo "<hr>";
	//区分大小写。
	var_dump(in_array('TOM',$array));
	echo "<hr>";
	//不区分数据类型。
	var_dump(in_array('123',$array));
4.5、array_key_exists(键,数组);
<?php
	$array = array('name'=>'李白',
					'杜甫',
					'白居易',
					'tom',
					123
	);
	var_dump($array);
	echo "<br>";
	var_dump(array_key_exists('name',$array));
	echo "<hr>";
	var_dump(array_key_exists('0',$array));
	echo "<hr>";
	var_dump(array_key_exists('4',$array));
4.6、array_search()
在数组中搜索给定的值, 如果成功返回相应的键名,如果找不到,返回false;
<?php
	$arr = ['name'=>'李白','age'=>100];
	$res1 = array_search('李白',$arr);
	echo "<hr>";
	$res2 = array_search('杜甫',$arr);
	var_dump($res1,$res2);
	
4.7、array_flip() 键值反转。
翻转数组中所有的键以及他们关联的值。
<?php
	$a = ['a'=>'red',
		'b'=>'green',
		'c'=>'blue',
		'd'=>'yellow'
	];
	$res = array_flip($a);
	print_r($res);
	
array_flip()函数返回一个反转后的的数组,如果同一个值出现了多次,最后一个键名将作为它的值,其他的键名将消失。(可用于数组去重)。
<?php
	$a = ['a'=>'red',
		'b'=>'green',
		'c'=>'blue',
		'd'=>'yellow',
		'f'=>'blue',
	];
	$res=array_flip($a);
	$res1= array_flip($res);
	print_r($res1);

5.array_push,array_pop,array_shift(),array_unshift()

array_push(数组,元素)
在数组的末尾添加元素。
array_pop(数组)。
弹出数组末尾的元素。


<?php
	$stu = [];
	array_push($stu,'李白');
	var_dump($stu);
	array_push($stu,'杜甫','白居易','辛弃疾');
	var_dump($stu);
	echo"<br>";
	$res = array_pop($stu);
	print_r($stu);
	print_r($res);
	

array_shift();将数组的第一个元素移除。
array_unshift();在数组的开头插入一个元素。

<?php
	$stu = [];
	array_push($stu,'李白');
	array_push($stu,'杜甫','白居易','辛弃疾');
	var_dump($stu);
	echo"<br>";
	var_dump($stu);
	echo'<hr>';
	array_unshift($stu,'tom');
	var_dump($stu);
	

用数组实现队列(先进先出)。
array_push() 入队。
array_shift() 出队。
数组实现栈(后进先出,子弹夹)。
array_push() 入栈。
array_pop() 出栈。

6. array_reverse

以相反的顺序返回数组。

<?php
	$a = array('a'=>'volvo',
			'b'=>'bmw',
			'c'=>'toyota');
	print_r(array_reverse($a));

7. 数组排序函数sort,rsort,asort,arsort,ksort

7.1 sort()
对数组进行升序排序,重建数字索引,不保持原来的键值关联关系。
<?php
	$list =['a'=>10,'c'=>8,'b'=>12];
	sort($list);
	print_r($list);
7.2 rsort():按值进行降序排列,不保持原来的键值关联关系。
<?php
	$list =['a'=>10,'c'=>8,'b'=>12];
	rsort($list);
	print_r($list);
7.3 asort():对数组进行升序排序,保持键值关联。
<?php
	$list =['a'=>10,'c'=>8,'b'=>12];
	asort($list);
	print_r($list);
7.4 arsort():对数组进行降序排序,保持键值关联。
<?php
	$list =['a'=>10,'c'=>8,'b'=>12];
	arsort($list);
	print_r($list);
7.5 ksort():按键进行升序排列;
<?php
	$list =['a'=>10,'c'=>8,'b'=>12];
	ksort($list);
	print_r($list);
7.6 krsort(): 按键进行降序排列;
<?php
	$list =['a'=>10,'c'=>8,'b'=>12];
	krsort($list);
	print_r($list);
7.7 natsort():自然排序。
<?php
	$stu = array('stu_3','stu_1','stu_5','stu_18','stu_101');
	sort($stu);
	print_r($stu);
	natsort($stu);
	print_r($stu);
7.8 usort():自定义排序。
在第一个参数,小于,等于或者大于第二个参数时,该比较函数必须相应的返回一个,小于,等于,或者大于0的数。
<?php
    $stu = array(
            array('name'=>'tom','age'=>22,'score'=>77),
            array('name'=>'berry','age'=>25,'score'=>88),
            array('name'=>'ketty','age'=>18,'score'=>79),
            array('name'=>'rose','age'=>20,'score'=>75)
    
    );
	usort($stu,function($stu1,$stu2){
		if($stu1['age']<$stu2['age'])
		return -1;
		elseif($stu1['age']>$stu2['age'])
		return 1;
		else
		return 0;
	});
	print_r($stu);

8. 数组去重array_unique()

<?php
   $a =array('a'=>'red','b'=>'green','c'=>'red');
   print_r(array_unique($a));

9. 数组的案例

斗地主 随机发牌 自动生成54张牌,随机分配出底牌和每个人的牌。
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值