日期函数
1、date()函数
- 格式化一个本地时间/日期,返回将整数timestamp按照给定的格式字串而产生的字符串。
常用参数:
- Y:4位数的年份
- n:表示月份没有前导0 1-12
- j:表示月份中第几天没没有前导0 1-31
- m:数字表示的月份,有前导零 01 到 12
- d:月份中的第几天,有前导零的 2 位数字 01 到 31
- H:代表24小时的格式有前导0 i:有前导0格式的分钟
- s:有前导0格式的秒数
2、time()时间戳
- 返回当前的UNIX时间戳
代码如下:
<?php
echo time();//获取时间戳
echo date("Y-m-d H:i:s");//获取年-月-日 时:分:秒格式的当前时间
echo date("Y-m-d H:i:s");//获取年-月-日 时:分:秒格式的当前时间
?>
数组及数组函数
1、php创建数组
代码如下:
<?php
//创建默认下标的数组
$arr[]=1;
$arr[]='php';
$arr[]=true;
var_dump($arr);
//创建自定义下标
$arr1['id']=1;
$arr1['name']="狗子";
var_dump($arr1);
//用array()函数创建数组
$arr2=array('id'=>1,'name'=>'狗子');
var_dump($arr2);
var_dump($arr2['id']);// int(1)
print_r($arr2['id']);//1
?>
2、访问及查看数组
访问:
$arr=array(‘id’=>1,’name’=>’狗子’);$arr[‘id’]
$arr[‘name’]
查看:
var_dump($arr);//带数据类型格式的print_r($arr);//不带数据类型格式
<?php
$arr=array('id'=>1,'name'=>'狗子');
echo $arr['id'];//1
echo $arr['name'];//狗子
var_dump($arr);//array(2) { ["id"]=> int(1) ["name"]=> string(6) "狗子" }
print_r($arr);// Array ( [id] => 1 [name] => 狗子 )
?>
3、遍历数组
- a
foreach($arr as $k=>$v){
echo $k.'-----'.$v;
}
- b
foreach($arr as $v){
//只输出$v
}
$arr=array('id'=>1,'name'=>'狗子','age'=>18);
foreach($arr as $k=>$v){
echo $k.'——'.$v.'<br/>';
}
输出:
id——1
name——狗子
age——18
<?php
$arr=array('id'=>1,'name'=>'狗子','age'=>18);
foreach($arr as $v){
echo $v.'<br/>';//1狗子18
}
?>
输出:
1
狗子
18
4、数组函数
1、unset()函数:既可以清空整个数组,也可以删除数组里面某个元素
- unset($arr);//清空整个数组;
- unset($arr[‘id’]);//清空数组里面下标为id的元素;
<?php
//删除某个key
$arr=array('id'=>1,'name'=>'狗子','age'=>18);
unset($arr['id']);
print_r($arr);//Array ( [name] => 狗子 [age] => 18 )
//清空数组存储空间
unset($arr); print_r($arr);
//报错 Notice: Undefined variable: arr in C:\xampp\htdocs\day2\demo2-array2.php on line 6
?>
对比js:
var arr=new Array();
arr['id']=1;
arr['name']="狗子";
console.log(arr);
//删除某个key
delete arr['id'];
console.log(arr);
//清空数组
arr=[];
console.log(arr);
2、count()函数:获取数组的长度
<?php
$arr[]=1;
$arr[]=2;
$arr[]=3;
$arr["id"]=3;
echo count($arr);//3
?>
对比js:
var arr=new Array(1,2);
console.log(arr.length);//.length获取数组长度
3、array_rand()函数:从数组中随机取出一项或者多项下标
array_rand(要获取的数组,取出多少项)
代码如下:
<?php
$arr=array(1,2,3,4,5,6);
echo array_rand($arr,1);//1
var_dump(array_rand($arr,3));//array(3) { [0]=> int(0) [1]=> int(3) [2]=> int(5) }
//获取一项,用echo;获取多个用var_dump()
?>
4、array_unique()函数:去除数组中的重复项
$arr=array(12,34,34,12,9);
print_r(array_unique($arr));//Array ( [0] => 12 [1] => 34 [4] => 9 )
echo '<br>';
$arr=array('1',11,'1','aa',2,'aa','c');
print_r(array_unique($arr));//Array ( [0] => 1 [1] => 11 [3] => aa [4] => 2[6] => c );
对比js:
//方法1:
Array.prototype.method1 = function(){
var arr[]; //定义一个临时数组
for(var i = 0; i < this.length; i++){ //循环遍历当前数组
//判断当前数组下标为i的元素是否已经保存到临时数组
//如果已保存,则跳过,否则将此元素保存到临时数组中
if(arr1.indexOf(this[i]) == -1){
arr.push(this[i]);
}
}
return arr;
}
//方法2:
Array.prototype.method2 = function(){
var h{}; //定义一个hash表
var arr[]; //定义一个临时数组
for(var i = 0; i < this.length; i++){ //循环遍历当前数组
//对元素进行判断,看是否已经存在表中,如果存在则跳过,否则存入临时数组
if(!h[this[i]]){
//存入hash表
h[this[i]] = true;
//把当前数组元素存入到临时数组中
arr.push(this[i]);
}
}
return arr;
}
//方法3:
Array.prototype.method3 = function(){
//直接定义结果数组
var arr[this[0]];
for(var i = 1; i < this.length; i++){ //从数组第二项开始循环遍历此数组
//对元素进行判断:
//如果数组当前元素在此数组中第一次出现的位置不是i
//那么我们可以判断第i项元素是重复的,否则直接存入结果数组
if(this.indexOf(this[i]) == i){
arr.push(this[i]);
}
}
return arr;
}
//方法4:
Array.prototype.method4 = function(){
//将数组进行排序
this.sort();
//定义结果数组
var arr[this[0]];
for(var i = 1; i < this.length; i++){ //从数组第二项开始循环遍历数组
//判断相邻两个元素是否相等,如果相等说明数据重复,否则将元素写入结果数组
if(this[i] !== arr[arr.length - 1]){
arr.push(this[i]);
}
}
return arr;
}
PHP常用字符串函数
1、strlen($str)函数:获取字符串的长度(相当于js中的.length)
$str="abcdefg";
echo strlen($str);//7
2、strpos(string,find,start)函数:获取某个字符串里面下标位置
返回的是第一次查询到的字符串的下标(相当于indexof)
- string 要查询的字符串
- find 要查询的字符
- start 开始查询的下标,默认为0
$str='abcxdccgffsdfs';
echo strpos($str,'c');//2
3、字符串替换函数
str_replace(“要替换的内容”,”替换后的内容”,”要替换的字符串”)
$str1="?a=1?b=2&c=3";
echo str_replace("?","&",$str1).'<br>';//&a=1&b=2&c=3
对比js:
var str1="?a=1?b=2&c=3";
console.log(str1.replace(/\?/g,"&"));
4、字符串裁剪:substr(string.start,length)
- string 要裁剪的字符串
- start 开始的下标
- length 裁剪的长度
$str2="0123456789";
echo substr($str2,5,2);//56
对比js:
字符串裁剪: slice()、substr()、substring()
5、将字符串转换为数组:explode(分隔符,要分割的字符串)
$str5="1,2,3,4,5";
print_r(explode(',',$str5));//返回数组
对比js: split()
6、将数组转换为字符串:implode(连接符,要链接的数组)
$arr=[1,2,3,4];
echo implode(',',$arr);//返回字符串
对比js: join()
7、去除字符串前后的多余空格:trim($str)
对比js: str.trim()
php常用的数学函数
- sqrt():求平方根
- pow():求x的y次方
- rand():返回随机整数
- max():返回最大值
- min():返回最小值
- floor():向下取整
- ceil():向上取整
- round():四舍五入取整
- abs():绝对值