php 冷门与常用函数
目录
- 数组
- 1 . array_diff比较数组的差集
- 2 . array_column多维数组里只取指定的字段
- 3 . compact()创建已有变量成数组
- 4 . extract()将数组键转为变量
- 5 . array_map处理数组每个值
- 6 . array_filter数组去空,callback过滤数组
- 7 . array_merge合并,重置索引
- 8 . 数组排序
- string
- 1 . json正确转换中文
- 2 . strval获取变量的字符串值
- 预定义常量
- 1 . DIRECTORY_SEPARATOR路径分隔符
- 类与对象
- 1 . property_exists判断属性是否存在
- 文件与目录
- 1 .Linux中常常遇到权限问题,例如保存图片等
- 2 .glob()查找与模式匹配的文件或目录
数组
1 . array_diff
比较数组的差集
(判断请求参数是否缺少,在已设定的数组里)
$request = ['name'=>'xiaoming','age'=>'18','gender'=>''
]
function test( $request ){// 需要入库的参数$must = ['name','age','gender','school','height'];// 将请求参数的键取出比较$request_keys = array_keys($request);// 将请求中缺少的参数返回$param = array_diff($must , $request_keys);// 返回一个差集的数组// $param = ['school','height']// 此时可继续判断符合的参数是否有空值foreach ($must as $v){if(empty($requset[$v])){echo $v . '不能为空';}}
}
2 . array_column
多维数组里只取指定的字段
班级表数组取所有学生姓名:
array_column ($arr, 'userName');
3 . compact()
创建已有变量成数组
$m = 'is.m';
$n = 'is.n';
$l = 'is.l';
1:$result = compact('m','n','l'); 包含变量名的字符串
2: $result = compact(['m','n','l']); 包含变量名的数组
Array
([m] => is.m[n] => is.n[l] => is.l
)
4 . extract()
将数组键转为变量
$m = ['a'=>'---a','b'=>'---b','c'=>'---c'
];
$q = extract($m);
echo "$a \n $b \n $c";$q = extract($m, EXTR_PREFIX_ALL,'t'); 给所有变量加前缀
echo "$t_a \n $t_b \n $t_c";
5 . array_map
处理数组每个值
# 普通文件
$arr = [1,2,3,4,5];
function foo($n)
{return $n * $n;
}
$res = array_map('foo', $arr);
# $res = [1,4,9,16,25]
# 匿名函数
$arr = [1,2,3,4,5];
$res = array_map(function($n){return $n * $n;
},$arr);
# $res = [1,4,9,16,25]
# 该函数在类中的运用
# 类中第一个参数为数组 ['类名','方法名']
$arr = [1,2,3,4,5];
class foo
{public function __construct($arr){$res = array_map(['foo','map'], $arr);print_r($res);# $res = [1,4,9,16,25]}public function map($n){return $n += time();}
}
new foo($arr);
6 . array_filter
数组去空,callback过滤数组
$arr = [1,'',2,'',false,3,4];
array_filter($arr);
# [1,2,3,4]
7 . array_merge
合并,重置索引
$arr = [1=>'a',3=>'b',8=>'c'];
array_merge($arr);
# ['a','b','c']
8 . 数组排序
// 重置索引
sort 从低到高
rsort 从高到底
ksort 按键 从低到高// 保持键名
krsort 按键 从高到低
arsort 从高到低
asort 从低到高
string
目录
1 . json正确转换中文
$n = ['name'=>'小米'];
json_encode( $n ){"name":"\u5c0f\u7c73"}json_encode( $n,JSON_UNESCAPED_UNICODE );{"name":"小米"}
2 . strval
获取变量的字符串值
# 将变量的标量类型转换成string类型
$a = 123;
$b = 'hello';
$c = 99.9;
$d = true;
strval($a); // string(0) "123"
strval($b); // string(0) "hello"
strval($c); // string(0) "99.9"
strval($d); // string(0) "1"
预定义常量
目录
1 . DIRECTORY_SEPARATOR
路径分隔符
路径分隔符常量 "DIRECTORY_SEPARATOR"
window:"\"
linux:"/"
例:define('UPLOAD', dirname(__FILE__).DIRECTORY_SEPARATORY.'upload'.DIRECTORY_SEPARATORY)
结果:E:\www\shop\upload\
类与对象
目录
1 . property_exists
判断属性是否存在
property_exists( 对象obj或对象名string
, 属性名
)
class a
{protected $a;protected $b;
}
$obj = new a();
if (property_exists($obj, 'a')) {echo "exist";
}
文件与目录
目录
1 .Linux中常常遇到权限问题,例如保存图片等
// 判断文件是否 **可读**
is_readable()// 判断文件是否 **可写**
is_writable()// 判断文件是否 **可执行**
is_executable()
2 .glob()
查找与模式匹配的文件或目录
可以替代opendir( ),具有打开目录句柄的能力,直接匹配文件
// 查找匹配的文件
glob('*.php') // 当前目录
array(2) { [0]=> string(5) "a.php" [1]=> string(7) "b.php"}// 带目录匹配
glob(dirname(__FILE__).'\\'.'*.php');
array(2) { [0]=> string(22) "E:\www\test\a.php" [1]=> string(24) "E:\www\test\b.php"}// 查找匹配的目录
$a = glob(ROOT_PATH.'\\*',GLOB_ONLYDIR); // 表示仅返回匹配到的目录
array(2) { [0]=> string(22) "E:\www\test\aadir" [1]=> string(21) "E:\www\test\bbdir" }
返回目录
php 冷门与常用函数相关推荐
- php内置常用函数是哪些,PHP常用函数有哪些
PHP常用函数有哪些 导语:PHP主要通过函数实现一些功能,那PHP常用函数有哪些呢?下面就由小编为大家介绍一下,欢迎大家阅读! 数学函数 1.abs(): 求绝对值 $abs = abs(-4.2) ...
- Lua基本语法-书写规范以及自带常用函数
Lua基本语法-书写规范和常用函数 本文提供全流程,中文翻译. Chinar坚持将简单的生活方式,带给世人! (拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 1 String O ...
- SQLserver 常用函数适用方法(转载)
SQL Server 常用函数使用方法(持续更新) 之前就想要把一些 SQL 的常用函数记录下来,不过一直没有实行...嘿嘿... 直到今天用到substring()这个函数,C# 里面这个方法起始值 ...
- python Pool常用函数用法总结
在本篇内容里小编给大家整理的是一篇关于python Pool常用函数用法总结内容,有需要的朋友们可以学习下. 1.说明 apply_async(func[,args[,kwds]):使用非堵塞调用fu ...
- ACM——常用函数总结
常用函数总结: 一.全排列:next_permutation 二.读写优化 三.返回容器内最大最小值 四.复制函数 五.容器删除函数 六.容器填充函数 七.查找函数 八.字符串转换整数 九.欧拉筛 十 ...
- e class connect.php,剖析帝国CMS核心文件e/class/connect.php中的常用函数
帝国CMS下的e/class/connect.php文件中包含了帝国CMS常用的一些核心功能函数,加深对connect.php文件中常用函数的了解对于帝国CMS的二次开发来说非常重要. 现将帝国CMS ...
- PHP访问mysql的常用函数,PHP操作MySQL数据库常用函数
PHP操作MySQL数据库常用函数 php操作mysql数据库,俗称天龙八步: 第一步:连接数据库 第二步:判断连接错误 第三步:选择数据库 第四步:设置字符集 第五步:准备SQL语句 第六步:执行并 ...
- python math库常用函数_Python math库常用函数
math库常用函数及举例: 注意:使用math库前,用import导入该库 >>> import math 取大于等于x的最小的整数值,如果x是一个整数,则返回x >>& ...
- R语言广义线性模型函数GLM、广义线性模型(Generalized linear models)、GLM函数的语法形式、glm模型常用函数、常用连接函数、逻辑回归、泊松回归、系数解读、过散度分析
R语言广义线性模型函数GLM.广义线性模型(Generalized linear models).GLM函数的语法形式.glm模型常用函数.常用连接函数.逻辑回归.泊松回归.系数解读.过散度分析 目录
- R语言效用分析 ( 效能分析、Power analysis)确定样本量、假设检验与两类错误、pwr包进行效用分析 ( 效能分析、Power analysis)的常用函数列表
R语言效用分析 ( 效能分析.Power analysis)确定样本量.假设检验与两类错误.pwr包进行效用分析 ( 效能分析.Power analysis)的常用函数列表 目录
最新文章
- VS各种错误集成总结,持续更新
- MNIST 训练测试
- win10一按右键就闪屏_一步一步的详细讲解Win10磁盘分区教程
- [原创]JMeter初次使用总结
- print的describe的展示全部数据_大数据项目中的QA需要迎接新的挑战
- [Leedcode][JAVA][第25题][K个一组反转链表][链表][递归]
- 可变长参数以及面试题
- 排序算法专题-希尔排序
- Linux进程线程学习笔记
- LoadRunner11在Win10 下的破解解决办法(整合)
- 通过第三方平台超级鹰进行登录页面验证码识别
- win7配置FTP服务器
- CentOS 8 配置 authorized_keys 免密登录后,免密登录失败的排查以及最终的解决
- 软件实施工作个人看法
- 水果忍者(数学 叉积)
- 洛谷P2905 [USACO08OPEN]农场危机Crisis on the Farm
- 中专计算机与外设维修,《计算机维护与维的修》级计算机及外设维修三中专教学大纲.doc...
- GDI+学习记录(10)- 影线画刷HatchBrush
- 图表分析2020年和2018年北京积分落户数据
- 场景金融丨中国银行潜江分行上线湖北首个“中银E农通”系统
热门文章
- 保密计算机和移动存储介质台账,银行计算机和移动存储介质保密管理办法
- 2019年高中数学圆锥曲线解题技巧方法总结及高考试题
- 获取用户的openid与遇到的errcode:40029与errcode:40125,errmsg
- 程序员不要轻易去上海
- zoj 3332 Strange Country II
- delphi android动态权限,Delphi XE 新功能试用:多种皮肤样式静、动态设置方法
- 外贸单证管理系统如何解决企业制单问题
- 【无标题】免费公众号对接电影自动回复功能教程详解
- 别再问我阿里面试流程了!!!P8 面试官 花了一个月整理了这份 4000 字的 面试流程
- 2017年蓝桥杯软件B组省赛试题