很多站长朋友们都不太清楚php常用函数库,今天小编就来给大家整理php常用函数库,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 9个必须知道的实用PHP函数和功能 2、 php mysqli 常用函数有哪些 3、 PHP面试题2--常用的数组函数 4、 php里说出数组的常用函数及用法? 5、 PHP的常用系统函数有哪些 9个必须知道的实用PHP函数和功能即使使用 PHP 多年 也会偶然发现一些未曾了解的函数和功能 其中有些是非常有用的 但没有得到充分利用 并不是所有人都会从头到尾一页一页地阅读手册和函数参考!
任意参数数目的函数
你可能已经知道 PHP 允许定义可选参数的函数 但也有完全允许任意数目的函数参数的方法 以下是可选参数的例子
以下为引用的内容
// function with optional arguments function foo($arg = $arg = ) {
echo "arg : $arg n"; echo "arg : $arg n";
}
foo( hello world ); /* prints: arg : hello arg : world */
foo(); /* prints: arg : arg : */
现在让我们看看如何建立能够接受任何参数数目的函数 这一次需要使用 func_get_args() 函数
以下为引用的内容
// yes the argument list can be empty function foo() {
// returns an array of all passed arguments $args = func_get_args();
foreach ($args as $k => $v) { echo "arg" ($k+ ) ": $vn"; }
}
foo(); /* prints nothing */
foo( hello ); /* prints arg : hello */
foo( hello world again ); /* prints arg : hello arg : world arg : again */
使用 Glob() 查找文件
许多 PHP 函数具有长描述性的名称 然而可能会很难说出 glob() 函数能做的事情 除非你已经通过多次使用并熟悉了它 可以把它看作是比 scandir() 函数更强大的版本 可以按照某种模式搜索文件
以下为引用的内容
// get all php files $files = glob( * php );
print_r($files); /* output looks like: Array ( [ ] => phptest php [ ] => pi php [ ] => post_output php [ ] => test php ) */
你可以像这样获得多个文件
以下为引用的内容
// get all php files AND txt files $files = glob( * {php txt} GLOB_BRACE);
lishixinzhi/Article/program/PHP/201311/21182
php mysqli 常用函数有哪些php 中mysqli是个类,这个类的函数(方法)有:
mysqli::$affected_rows — Gets the number of affected rows in a previous MySQL operation
mysqli::autocommit — 打开或关闭本次数据库连接的自动命令提交事务模式
mysqli::begin_transaction — Starts a transaction
mysqli::change_user — Changes the user of the specified database connection
mysqli::character_set_name — 返回当前数据库连接的默认字符编码
mysqli::$client_info — Get MySQL client info
mysqli::$client_version — Returns the MySQL client version as a string
mysqli::close — 关闭先前打开的数据库连接
mysqli::commit — 提交一个事务
mysqli::$connect_errno — Returns the error code from last connect call
mysqli::$connect_error — Returns a string description of the last connect error
mysqli::__construct — Open a new connection to the MySQL server
mysqli::debug — Performs debugging operations
mysqli::dump_debug_info — 将调试信息输出到日志
mysqli::errno — 返回最近函数调用的错误代码
mysqli::$error_list — Returns a list of errors from the last command executed
mysqli::$error — Returns a string description of the last error
mysqli::$field_count — Returns the number of columns for the most recent query
mysqli::get_charset — Returns a character set object
mysqli::get_client_info — Get MySQL client info
mysqli_get_client_stats — Returns client per-process statistics
mysqli_get_client_version — 作为一个整数返回MySQL客户端的版本
mysqli::get_connection_stats — Returns statistics about the client connection
mysqli::$host_info — 返回一个表述使用的连接类型的字符串
mysqli::$protocol_version — 返回MySQL使用的协议版本号
mysqli::$server_info — 返回MySQL服务器的版本号
mysqli::$server_version — 作为一个整数返回MySQL服务器的版本
mysqli::get_warnings — Get result of SHOW WARNINGS
mysqli::$info — Retrieves information about the most recently executed query
mysqli::init — Initializes MySQLi and returns a resource for use with mysqli_real_connect()
mysqli::$insert_id — Returns the auto generated id used in the last query
mysqli::kill — Asks the server to kill a MySQL thread
mysqli::more_results — Check if there are any more query results from a multi query
mysqli::multi_query — Performs a query on the database
mysqli::next_result — Prepare next result from multi_query
mysqli::options — Set options
mysqli::ping — Pings a server connection, or tries to reconnect if the connection has gone down
mysqli::poll — Poll connections
mysqli::prepare — Prepare an SQL statement for execution
mysqli::query — 对数据库执行一次查询
mysqli::real_connect — 建立一个 MySQL 服务器连接
mysqli::real_escape_string — Escapes special characters in a string for use in an SQL statement, taking into account the current charset of the connection
mysqli::real_query — 执行一个mysql查询
mysqli::reap_async_query — Get result from async query
mysqli::refresh — Refreshes
mysqli::release_savepoint — Removes the named savepoint from the set of savepoints of the current transaction
mysqli::rollback — 回退当前事务
mysqli::rpl_query_type — Returns RPL query type
mysqli::savepoint — Set a named transaction savepoint
mysqli::select_db — 选择用于数据库查询的默认数据库
mysqli::send_query — 发送请求并返回结果
mysqli::set_charset — 设置默认字符编码
mysqli::set_local_infile_default — Unsets user defined handler for load local infile command
mysqli::set_local_infile_handler — Set callback function for LOAD DATA LOCAL INFILE command
mysqli::$sqlstate — Returns the SQLSTATE error from previous MySQL operation
mysqli::ssl_set — Used for establishing secure connections using SSL
mysqli::stat — Gets the current system status
mysqli::stmt_init — 初始化一条语句并返回一个用于mysqli_stmt_prepare(调用)的对象
mysqli::store_result — Transfers a result set from the last query
mysqli::$thread_id — Returns the thread ID for the current connection
mysqli::thread_safe — 返回是否是线程安全的
mysqli::use_result — Initiate a result set retrieval
mysqli::$warning_count — Returns the number of warnings from the last query for the given link
以上函数清单直接来自网站。你可以进入该网站参看。
PHP面试题2--常用的数组函数一,数组操作的基本函数
1. 数组的键名与值
array_values($arr); 获得数组的值
array_keys($arr); 获得数组的键名
array_flip($arr); 数组的值与键名互换(如果有重复前面的会被后面的覆盖)
in_array("apple",$arr); 在数组中检索apple
array_search("apple",$arr); 在数组中检索apple,如果存在返回键名
array_key_exists("apple",$arr); 检索给定的键名是否存在数组中
isset($arr["apple"]); 检索给定的键名是否存在数组中
array_unique() 删除数组中的重复值
2. 数组的内部指针
current($arr); 返回数组中的当前单元
pos($arr); 返回数组中的当前单元
key($arr); 返回数组中的当前单元的键名
prev($arr); 将数组中的内部指针倒回一位
next($arr); 将数组中的内部指针向前移动一位
end($arr); 将数组中的内部指针指向最后一单元
reset($arr); 将数组中的内部指针指向第一单元
each($arr); 将返回数组当前元素的一个键/值的构造数组,并使数组指针向前移动一位
list($key,$value) = each($arr); 获得数组当前元素的键名和值
3. 数组和变量之间的转换
extract(array,extract_rules,prefix); 函数从数组中将变量导入到当前符号表。该函数使用数组键名作为变量名,使用数组键值作为变量值。针对数组中的每个元素,将在当前符号表中创建对应的一个变量。
compact(var1,var2...); 创建一个包含变量名和它们的值的数组。任何没有变量名与之对应的字符串都被略过。
二,数组的分段和填充
1. 数组的分段
array_slice(array,start,length,preserve); 返回数组中的选定部分。如果数组中有字符串键名,返回的数组将保留键名。
array_splice(array1,start,length,array2); 从数组中移除选定的元素,并用新元素取代它。函数返回被移除元素的数组,如果函数没有移除任何元素(length=0),则替代数组将从start参数的位置插入。不保留替代数组的键名。
2. 数组的分割
array_chunk(array,size,preserve_keys); 把一个数组分割为新的数组块。
3. 数组的填充
array_pad(array,size,value); 将指定数量的带有指定值的元素插入到数组。如果将size参数设置为负数,该函数会在原始数组之前插入新的元素。如果size参数小于原始数组的长度,该函数不会删除任何元素。
三,数组与栈
array_push(array,value1,value2...); 向数组尾部插入一个或多个元素。即使数组有字符串键名,添加的元素将是数字键名。
array_pop(array); 删除数组的最后一个元素。返回值是数组的最后一个值,即,被删除的元素值。如果数组为空,或者不是一个数组,将返回NULL。
四,数组和队列
array_shift(array); 用于删除数组中的第一个元素,并返回被删除的元素。如果键名是数字,所有的元素都将获得新的键名,从0开始,并以1递增。
array_unshift(array,value1,value2,value3...); 用于向数组插入新元素,新数组的值将被插入到数组的开头。数值键名将从0开始,以1递增。字符串键名将保持不变。
五,回调函数
array_walk(array,myfunction,parameter...); 将数组中的每个元素应用到 用户自定义函数。在函数中,数组的键名和键值是参数。可以通过把用户自定义函数的第一个参数指定为引用:$value,来改变数组元素的值。
array_map(myfunction,array1,array2,array3...); 函数将用户自定义函数作用到数组中的每个值上,并返回用户自定义函数作用后的带有新的值的数组。myfunction可以为null
array array_filter ( array $array [, callable $callback [, int $flag = 0 ]] ); 用回调函数过滤数组中的元素。该函数把输入数组中的每个键值传给回调函数。如果回调函数返回true,则把输入数组中的当前键值返回给结果数组,数组键名保持不变。
array_reduce(array,myfunction,initial); 函数发送数组中的值到用户自定义函数,并返回一个字符串。如果数组是空的或者初始值未传递,该函数返回null。initial为可选,规定发送到函数处理的第一个值。
六,数组的计算
1. 数组元素的求和
array_sum(array); 返回数组中的所有值的和
2. 数组的合并
array_merge(array1,array2,array3...); 用于把一个或多个数组合并成一个数组。如果两个或更多个数组有相同的键名。则最后的数组会覆盖其他数组。如果向函数输入了一个数组,且键名是整数,则该函数会返回带有整数键名的新数组,其键名以0开始进行重新索引。
array_merge_recursive(array1,array2,array3...); 用于把一个或多个数组合并为一个数组,该函数与array_merge()函数之间的不同是在处理两个或多个数组元素有相同的键名的情况下,array_merge_recursive()不会进行键名覆盖,而是将多个相同键名的值递归组成一个数组。如果您仅仅向 array_merge_recursive() 函数输入一个数组,结果与 array_merge() 相同。
3. 数组的差集
array_diff(array1,array2,array3...); 函数用于比较两个(或更多个)数组的值,并返回差集。该函数比较两个(或更多个)数组的值(key=>value中的value),并返回一个差集数组,该数组包括了所有在被比较的数组(array1)中,但是不在任何其他参数数组(array2或array3等等)中的值。
array_diff_assoc(array1,array2,array3...); 函数用于比较两个(或更多个)数组的键名和键值,并返回差集。该函数比较两个(或更多个)数组的键名和键值,并返回一个差集数组,该数组包括了所有在被比较的数组(array1)中,但是不在任何其他参数数组(array2 或 array3 等等)中的键名和键值。
4. 数组的并集
array_intersect(array1,array2,array3...); 函数用于比较两个(或更多个)数组的键值,并返回交集。该函数比较两个(或更多个)数组的键值,返回一个交集数组,该数组包括了所有在被比较的数组(array1)中,同时也在任何其他参数数组(array2 或 array3 等等)中的键值。
array_intersect_assoc(array1,array2,array3...); 函数用于比较两个(或更多个)数组的键名和键值,并返回交集。该函数比较两个(或更多个)数组的键名和键值,并返回一个交集数组,该数组包括了所有在被比较的数组(array1)中,同时也在任何其他参数数组(array2 或 array3 等等)中的键名和键值。
七,数值的排序
array_multisort(): 对多个数组或多维数组进行排序
sort(): 以升序对数组排序
rsort(): 以降序对数组排序
asort(): 根据值,以升序对关联数组进行排序
ksort(): 根据键,以升序对关联数组进行排序
arsort(): 根据值,以降序对关联数组进行排序
krsort(): 根据键,以降序对关联数组进行排序
资料参考:
php里说出数组的常用函数及用法?PHP常用操作数组的函数
变量和数组的转换
compact() 将变量整合成数组
extract() 将数组中的每个值以键的名分解成变量
变量和字符串转换
explode() 以某个子串分解字符串成数组
implode() 将一维数组根据某个符号拼接成字符串
数组与数组之间关系
array_merge() 合并/并集
array_diff() 差集
array_intersect() 交集
数组值的操作
array_pop() 删除(弹出)数组最后一个值
array_push() 向数组中追加一个值
判断数组是否存在数组中
in_array() 判断一个值是否存在数组中
array_key_exists() 判断键是否存在数组中
数组去重
array_unique() 数组去重
获取二维数组中的值的集合
array_column() 获取二维数组中的值的集合
提取数组的键与值
array_values 提取数组的值构成一维数组
array_keys 提取数组的键构成一维数组
返回数组中的随机的键
array_rand() 返回数组中的随机的键
返回数组中值的数量
count() 返回数组中值的和
查询数组中的值
array_search() 查询数组中的值是否存在/in_array()有点相似
排序
sort() 排序有很多种,按键或值升降序
array_multisort() 多维数组排序
分割数组
array_chunk()
PHP的常用系统函数有哪些PHP自带了大量的系统函数,使用这些函数可以完成大部分的任务。常用的有数学运算函数和日期时间函数。
1.数学运算函数:
数学运算是程序中最常执行的功能之一,PHP提供了很多系统函数实现运算功能,无须安装、编译和配置便可以直接使用。下表列出了常用的数学函数:
函数名称
功能描述
函数名称
功能描述
abs()
绝对值
is_finite()
判断是否为有限值
acos()
反余弦
is_infinite()
判断是否为无限值
acosh()
反双曲余弦
is_nan()
判断是否为合法数值
asin()
反正弦
lcg_value()
组合线性同余发生器
asinh()
反双曲正弦
log10()
以10为底的对数
atan2()
两个参数的反正切
log()
自然对数
atan()
反正切
max()
最大值
atanh()
反双曲正切
min()
最小值
base_convert()
在任意进制之间转换数字
mt_getrandmax()
显示随机数的最大可能值
bindec()
二进制转换为十进制
mt_rand()
生成更好的随机数
ceil()
进一法取整
mt_sran()
播下一个更好随机数种子
cos()
余弦
octdec()
八进制转换为十进制
cosh()
双曲余弦
pi()
圆周率
decbin()
十进制转换为二进制
pow()
指数表达式
dechex()
十进制转换为十六进制
rad2deg()
将弧度转换为相应的角度值
decoct()
十进制转换为八进制
rand()
产生一个随机数
deg2rad()
将角度转换为弧度
round()
对浮点数四舍五入
exp()
计算e的指数
sin()
正弦
floor()
舍去法取整
sinh()
双曲正弦
fmod()
返回除法的浮点数余数
sqrt()
平方根
getrandmax()
显示随机数最大的可能值
srand()
播下随机数发生器种子
hexdec()
十六进制转换为十进制
tan()
正切
hypot()
计算直角三角形的斜边长度
tanh()
双曲正切
注意:这些数学函数仅能处理计算机中integer和float范围的值。
示例:产生随机密码的的函数
function CreatePassword($length=6) //生成密码函数,默认6位
{
$dictionary=”abcdefghijklmnopqrstuvwxyz0123456789”; //密码字典
$maxChar=strlen($dictionary); //获取字典长度
$password=””;
for($i=0; $i<$length; $i++) //随机生成每一位
{
$password.=$dictionary[rand(0, $maxChar)]; //产生随机数,再从字典取字母
}
return $password;
}
2.日期和时间运算:
PHP提供了丰富的日期和时间方面运算的函数。
1)UNIX时间戳:
时间戳(Timestamp)是源于UNIX系统的时间表示方法,是指从1970年1月1日(0GMT)起到现在所经过的秒数,因此也称为UNIX时间戳。
在PHP中使用时间戳的最简单方式就是调用time()函数,time()函数可以根据当前时间返回一个时间戳的表示法。示例:
echo “当前时间戳为:”.time();
2)日期函数:
PHP提供的一些常用的日期函数。
①date()函数:
date()函数用于格式化一个本地日期和时间。语法格式为:
string date(string $format [, int $timestamp])
返回将整数$timestamp按照$format给定格式而产生的字符串。其中,$timestamp参数是可选的,如果没有给出时间戳,则使用本地当前时间,即time()。
下表列出了$format格式化字符串参数的说明:
值
说明
返回值
D
月份中的第几天,有前导零的2位数字
01到31
D
星期中的第几天,文本表示,3个字母
Mon到Sun
J
月份中的第几天,没有前导零
1到31
L
L的小写字母,表示星期几的完整文本格式
Sunday到Saturday
N
数字表示的星期中的第几天
1(表示星期一)到7(表示星期天)
S
每月天数后面的英文后缀,2个字符
st,nd,rd或th。可以和j一起用
W
星期中的第几天,数字表示
0(表示星期天)到6(表示星期六)
Z
年份中的第几天
0到366
W
年份中的第几周,每周从星期一开始
例如:42(当年的第42周)
F
月份,完整的文本格式,例如January
January到December
M
数字表示的月份,有前导零
01到12
M
3个字母缩写表示的月份
Jan到Dec
N
数字表示的月份,没有前导零
1到12
t
给定月份所应有的天数
28到31
L
是否为闰年
如果是闰年为1,否则为0
o
年份数字
例如:2016
Y
4位数字完整表示的年份
例如:2016
y
2位数字表示的年份
例如:16
a
小写的上午和下午值
am或pm
A
大写的上午和下午值
AM或PM
g
小时,12小时格式,没有前导零
1到12
G
小时,24小时格式,没有前导零
0到23
h
小时,12小时格式,有前导零
01到12
H
小时,24小时格式,有前导零
00到23
i
有前导零的分钟数
00到59
s
秒数,有前导零
00到59
e
时区标识
例如:UTC,GMT,Atlantic/Azores
I
是否为夏令时
如果是夏令时为1,否则为0
O
与格林威治时间相差的小时数
例如:+0200
Z
时差偏移量的秒数
-43200到43200
c
ISO8601格式的日期
2011-05-12T15:19:21+00:00
r
RFC822格式的日期
例如:Thu, 21 Dec 2011 06:07:08 +0200
U
从January 1 1970 0开始至今的秒数
与time()函数相同
示例:
$today=date(“m/d/y”); //结果为:07/19/12
$today=date(“F j, Y, g:i a”); //结果为:July 19, 2012, 9:07 am
$today=date(“Y年n月j日”); //结果为:2012年7月19日
$today=date(“Y-m-d H:i:s”); //结果为:2012-07-19 09:07:32
$today=date(“D M j G:i:s T Y”); //结果为:Thu Jul 19 9:07:32 CST 2012
$today=date(‘i t i s t h e jS d a y’); //结果为:07 31 07 32 31 09 Asia/Shanghai 19th 19 am 12
$today=date(‘\i\t \i\s \t\h\e jS \d\a\y’); //结果为:it is the 19th day
$today=date(‘H:m:s \m \i\s\ \m\o \h’); //结果为:09:07:32 m is month
②gmdate()函数:
gmdate()函数实现与date()函数相同的功能,不同的是gmdate()函数返回的时间是格林威治标准时间(GMT)。语法格式为:
string gmdate(string $format [, int $timestamp])
③getdate()函数:
getdate()函数用于获取指定的日期和时间信息。语法格式为:
array getdate([int $timestamp])
如果没有指定时间戳$timestamp,则使用系统当前的本地时间。getdate()函数返回一个数组,数组中的每个元素代表日期和时间中的特定组成部分。下表列出了返回数组中键名的说明:
键名
说明
返回值例子
seconds
秒的数字表示
0到59
minutes
分钟的数字表示
0到59
hours
小时的数字表示
0到23
mday
月份中的第几天的数字表示
1到31
wday
星期中的第几天的数字表示
0(表示星期天)到6(表示星期六)
mon
月份的数字表示
1到12
year
4位数字表示的完整年份
例如:2016
yday
一年中的第几天的数字表示
0到365
weekday
星期几的完整文本表示
Sunday到Saturday
month
月份的完整的文本表示
January到December
自从UNIX纪元开始至今的秒数
和time()的返回值类似,是一个时间戳
示例:
<?php
$today=getdate();
print_r($today);
printf(“今天是%s年%s月%s日 星期%s \n”, $today[“year”], $today[“mon”], $today[“mday”], $today[“wday”]);
printf(“现在时间是%s时%s分%s秒”, $today[“hours”], $today[“minutes”], $today[“seconds”]);
?>
执行后的结果为:
Arrar
(
[seconds]=>15
[minutes]=>37
[hours]=>9
[mday]=>19
[wday]=>4
[mon]=>7
[year]=>2016
[yday]=>200
[weekday]=>Thursday
[month]=>July
[0]=>1342661835
)
今天是2016年7月19日 星期4
现在时间是 9时37分15秒
④checkdate()函数:
checkdate()函数用于检查一个日期是否有效,有效则返回true,否则返回false。语法格式为:
bool checkdate(int $month, int $day, int $year)
当满足如下条件时,checkdate()函数将认为是一个有效的日期:
·$year的值是从1到32767
·$month的值是从1到12
·$day的值在给定的$month所应该具有的天数范围之内,包括闰年情况
示例:
echo checkdate(2,29,2012)?”有效”:”无效”;
2)时间函数:
①time()函数:
time()函数使用方法非常简单,没有参数调用后返回当前日期和时间的UNIX时间戳。语法格式为:
int time(void)
示例:
$next50day=time()+(50*24*60*60); //计算50天以后的日期
②mktime()函数:
mktime()函数的作用与time()函数相同,都可以返回一个时间戳表示的时间。不同的是,在mktime()函数中可以指定具体的日期和时间。语法格式为:
int mktime([int $hour],[int $minute],[int $second],[int $month], [int $day],[int $year])
上述参数列表从右向左顺序省略,任何省略的参数会被设置为本地日期和时间的当前值。如果指定的时间无法表示,则返回false。mktime()函数在做日期计算和验证方面很有用。示例:
$day1=mktime(0,0,0,12,25,2012);
$day2=mktime(0,0,0,10,1,2012);
$days=($day1-$day2)/(24*60*60); //根据时间戳计算出相差的天数
③strtotime()函数:
strtotime()函数用于将可阅读的英文日期/时间字符串转换成UNIX时间戳。语法格式:
int strtotime(string $time[, int $now])
其中,$time参数表示要被转换的字符串,$now表示计算返回值的时间戳。如果没有提供$now参数,将使用系统的当前时间。strtotime()函数成功时返回时间戳,否则返回false。
④microtime()函数:
microtime()函数调用后将返回当前UNIX时间戳和微秒数。语法格式为:
mixed microtime([bool $get_as_float])
这里的可选参数$get_as_float是一个布尔值,如果为true将返回一个浮点数。默认不带参数时将以“msec sec”格式返回一个字符串,其中msec是微秒部分,sec是UNIX时间戳。
关于php常用函数库的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php常用函数库 php函数写法的详细内容...