(一) 原始数据类型。
A. 四种标量类型:
a) boolean (布尔型)
b) integer (整型)
d) string (字符串)
B. 两种复合类型:
a) array (数组)
b) object (对象)
C. 特殊类型:
a) resource (资源)
b) NULL (无类型)
D. 伪类型:
a) mixed (混合类型)
b) number (数字类型)
e) callback (回调类型)
(二) 常用内部函数:
A. 字符串函数:
f) 输出与格式化:echo print printf print_r var_dump.
g) 字符串去除与填充:trim ltrim rtrim str_pad
h) 字符串连接与分割:implode join explode str_split
i) 字符串截取:substr strchr strrchr,
j) 字符串替换:str_replace substr_replace
k) 字符串长度与位置: strlen strpos strrpos
l) 字符转换:strtolower strtoupper lcfirst ucfirst ucwords
m) 特殊字符处理:nl2br addslashes htmlspecialchars htmlspecialchars_decode
B. 时间函数:
a) checkdate — 验证一个格里高里日期
b) date_add — 别名 DateTime::add
c) date_create_from_format — 别名 DateTime::createFromFormat
d) date_create_immutable_from_format — 别名 DateTimeImmutable::createFromFormat
e) date_create_immutable — 别名 DateTimeImmutable::__construct
f) date_create — 别名 DateTime::__construct
g) date_date_set — 别名 DateTime::setDate
h) date_default_timezone_get — 取得一个脚本中所有日期时间函数所使用的默认时区
i) date_default_timezone_set — 设定用于一个脚本中所有日期时间函数的默认时区
j) date_diff — 别名 DateTime::diff
k) date_format — 别名 DateTime::format
l) date_get_last_errors — 别名 DateTime::getLastErrors
m) date_interval_create_from_date_string — 别名 DateInterval::createFromDateString
n) date_interval_format — 别名 DateInterval::format
o) date_isodate_set — 别名 DateTime::setISODate
p) date_modify — 别名 DateTime::modify
q) date_offset_get — 别名 DateTime::getOffset
r) date_parse_from_format — Get info about given date formatted according to the specified format
s) date_parse — Returns associative array with detailed info about given date
t) date_sub — 别名 DateTime::sub
u) date_sun_info — Returns an array with information about sunset/sunrise and twilight begin/end
v) date_sunrise — 返回给定的日期与地点的日出时间
w) date_sunset — 返回给定的日期与地点的日落时间
x) date_time_set — 别名 DateTime::setTime
y) date_timestamp_get — 别名 DateTime::getTimestamp
z) date_timestamp_set — 别名 DateTime::setTimestamp
aa) date_timezone_get — 别名 DateTime::getTimezone
bb) date_timezone_set — 别名 DateTime::setTimezone
cc) date — 格式化一个本地时间/日期
dd) getdate — 取得日期/时间信息
ee) gettimeofday — 取得当前时间
ff) gmdate — 格式化一个 GMT/UTC 日期/时间
gg) gmmktime — 取得 GMT 日期的 UNIX 时间戳
hh) gmstrftime — 根据区域设置格式化 GMT/UTC 时间/日期
ii) idate — 将本地时间日期格式化为整数
jj) localtime — 取得本地时间
kk) microtime — 返回当前 Unix 时间戳和微秒数
ll) mktime — 取得一个日期的 Unix 时间戳
mm) strftime — 根据区域设置格式化本地时间/日期
nn) strptime — 解析由 strftime 生成的日期/时间
oo) strtotime — 将任何英文文本的日期时间描述解析为 Unix 时间戳
pp) time — 返回当前的 Unix 时间戳
qq) timezone_abbreviations_list — 别名 DateTimeZone::listAbbreviations
rr) timezone_identifiers_list — 别名 DateTimeZone::listIdentifiers
ss) timezone_location_get — 别名 DateTimeZone::getLocation
tt) timezone_name_from_abbr — Returns the timezone name from abbreviation
uu) timezone_name_get — 别名 DateTimeZone::getName
vv) timezone_offset_get — 别名 DateTimeZone::getOffset
ww) timezone_open — 别名 DateTimeZone::__construct
xx) timezone_transitions_get — 别名 DateTimeZone::getTransitions
yy) timezone_version_get — Gets the version of the timezonedb
C. 数学函数:
a) abs — 绝对值
b) acos — 反余弦
c) acosh — 反双曲余弦
d) asin — 反正弦
e) asinh — 反双曲正弦
f) atan2 — 两个参数的反正切
g) atan — 反正切
h) atanh — 反双曲正切
i) base_convert — 在任意进制之间转换数字
j) bindec — 二进制转换为十进制
k) ceil — 进一法取整
l) cos — 余弦
m) cosh — 双曲余弦
n) decbin — 十进制转换为二进制
o) dechex — 十进制转换为十六进制
p) decoct — 十进制转换为八进制
q) deg2rad — 将角度转换为弧度
r) exp — 计算 e 的指数
s) expm1 — 返回 exp(number) - 1,甚至当 number 的值接近零也能计算出准确结果
t) floor — 舍去法取整
u) fmod — 返回除法的浮点数余数
v) getrandmax — 显示随机数最大的可能值
w) hexdec — 十六进制转换为十进制
x) hypot — 计算一直角三角形的斜边长度
y) is_finite — 判断是否为有限值
z) is_infinite — 判断是否为无限值
aa) is_nan — 判断是否为合法数值
bb) lcg_value — 组合线性同余发生器
cc) log10 — 以 10 为底的对数
dd) log1p — 返回 log(1 + number),甚至当 number 的值接近零也能计算出准确结果
ee) log — 自然对数
ff) max — 找出最大值
gg) min — 找出最小值
hh) mt_getrandmax — 显示随机数的最大可能值
ii) mt_rand — 生成更好的随机数
jj) mt_srand — 播下一个更好的随机数发生器种子
kk) octdec — 八进制转换为十进制
ll) pi — 得到圆周率值
mm) pow — 指数表达式
nn) rad2deg — 将弧度数转换为相应的角度数
oo) rand — 产生一个随机整数
pp) round — 对浮点数进行四舍五入
qq) sin — 正弦
rr) sinh — 双曲正弦
ss) sqrt — 平方根
tt) srand — 播下随机数发生器种子
uu) tan — 正切
vv) tanh — 双曲正切
D. 数组函数
a) array_change_key_case — 返回字符串键名全为小写或大写的数组
b) array_chunk — 将一个数组分割成多个
c) array_column — 返回数组中指定的一列
d) array_combine — 创建一个数组,用一个数组的值作为其键名,另一个数组的值作为其值
e) array_count_values — 统计数组中所有的值出现的次数
f) array_diff_assoc — 带索引检查计算数组的差集
g) array_diff_key — 使用键名比较计算数组的差集
h) array_diff_uassoc — 用用户提供的回调函数做索引检查来计算数组的差集
i) array_diff_ukey — 用回调函数对键名比较计算数组的差集
j) array_diff — 计算数组的差集
k) array_fill_keys — 使用指定的键和值填充数组
l) array_fill — 用给定的值填充数组
m) array_filter — 用回调函数过滤数组中的单元
n) array_flip — 交换数组中的键和值
o) array_intersect_assoc — 带索引检查计算数组的交集
p) array_intersect_key — 使用键名比较计算数组的交集
q) array_intersect_uassoc — 带索引检查计算数组的交集,用回调函数比较索引
r) array_intersect_ukey — 用回调函数比较键名来计算数组的交集
s) array_intersect — 计算数组的交集
t) array_key_exists — 检查给定的键名或索引是否存在于数组中
u) array_keys — 返回数组中所有的键名
v) array_map — 将回调函数作用到给定数组的单元上
w) array_merge_recursive — 递归地合并一个或多个数组
x) array_merge — 合并一个或多个数组
y) array_multisort — 对多个数组或多维数组进行排序
z) array_pad — 用值将数组填补到指定长度
aa) array_pop — 将数组最后一个单元弹出(出栈)
bb) array_product — 计算数组中所有值的乘积
cc) array_push — 将一个或多个单元压入数组的末尾(入栈)
dd) array_rand — 从数组中随机取出一个或多个单元
ee) array_reduce — 用回调函数迭代地将数组简化为单一的值
ff) array_replace_recursive — 使用传递的数组递归替换第一个数组的元素
gg) array_replace — 使用传递的数组替换第一个数组的元素
hh) array_reverse — 返回一个单元顺序相反的数组
ii) array_search — 在数组中搜索给定的值,如果成功则返回相应的键名
jj) array_shift — 将数组开头的单元移出数组
kk) array_slice — 从数组中取出一段
ll) array_splice — 把数组中的一部分去掉并用其它值取代
mm) array_sum — 计算数组中所有值的和
nn) array_udiff_assoc — 带索引检查计算数组的差集,用回调函数比较数据
oo) array_udiff_uassoc — 带索引检查计算数组的差集,用回调函数比较数据和索引
pp) array_udiff — 用回调函数比较数据来计算数组的差集
qq) array_uintersect_assoc — 带索引检查计算数组的交集,用回调函数比较数据
rr) array_uintersect_uassoc — 带索引检查计算数组的交集,用回调函数比较数据和索引
ss) array_uintersect — 计算数组的交集,用回调函数比较数据
tt) array_unique — 移除数组中重复的值
uu) array_unshift — 在数组开头插入一个或多个单元
vv) array_values — 返回数组中所有的值
ww) array_walk_recursive — 对数组中的每个成员递归地应用用户函数
xx) array_walk — 对数组中的每个成员应用用户函数
yy) array — 新建一个数组
zz) arsort — 对数组进行逆向排序并保持索引关系
aaa) asort — 对数组进行排序并保持索引关系
bbb) compact — 建立一个数组,包括变量名和它们的值
ccc) count — 计算数组中的单元数目或对象中的属性个数
ddd) current — 返回数组中的当前单元
eee) each — 返回数组中当前的键/值对并将数组指针向前移动一步
fff) end — 将数组的内部指针指向最后一个单元
ggg) extract — 从数组中将变量导入到当前的符号表
hhh) in_array — 检查数组中是否存在某个值
iii) key_exists — 别名 array_key_exists
jjj) key — 从关联数组中取得键名
kkk) krsort — 对数组按照键名逆向排序
lll) ksort — 对数组按照键名排序
mmm) list — 把数组中的值赋给一些变量
nnn) natcasesort — 用“自然排序”算法对数组进行不区分大小写字母的排序
ooo) natsort — 用“自然排序”算法对数组排序
ppp) next — 将数组中的内部指针向前移动一位
qqq) pos — current 的别名
rrr) prev — 将数组的内部指针倒回一位
sss) range — 建立一个包含指定范围单元的数组
ttt) reset — 将数组的内部指针指向第一个单元
uuu) rsort — 对数组逆向排序
vvv) shuffle — 将数组打乱
www) sizeof — count 的别名
xxx) sort — 对数组排序
yyy) uasort — 使用用户自定义的比较函数对数组中的值进行排序并保持索引关联
zzz) uksort — 使用用户自定义的比较函数对数组中的键名进行排序
aaaa) usort — 使用用户自定义的比较函数对数组中的值进行排序
E. 其他函数
a) 引入其他:include require include require
(三) 预定义变量
a) 超全局变量 — 超全局变量是在全部作用域中始终可用的内置变量
b) $GLOBALS — 引用全局作用域中可用的全部变量
c) $_SERVER — 服务器和执行环境信息
d) $_GET — HTTP GET 变量
e) $_POST — HTTP POST 变量
f) $_FILES — HTTP 文件上传变量
g) $_REQUEST — HTTP Request 变量
h) $_SESSION — Session 变量
i) $_ENV — 环境变量
j) $_COOKIE — HTTP Cookies
k) $php_errormsg — 前一个错误信息
l) $HTTP_RAW_POST_DATA — 原生POST数据
m) $http_response_header — HTTP 响应头
n) $argc — 传递给脚本的参数数目
o) $argv — 传递给脚本的参数数组
(四) 面向对象:
A. 面向对象:
New 新建一个对象 instanceof判断一个“变量”是否是某个类的“对象”
extends 继承 parent 父类
B. 三大控制符:
public 完全访问 protected 子类访问 private 本类访问
C. 最终类 最终方法:
final class 最终类 final method 最终方法
D. 抽象类 抽象方法:
abstract class 抽象类 abstract method 抽象方法
E. 接口:
interface 定义接口 implements 实现接口
F. 自动加载类:
__autoload() 自动加载 spl_autoload_register() 注册加载类
G. 魔术方法:
a) 重载:overloading
b) 构造、析构方法:___construct() 构造方法 __destruct() 析构方法
c) 属性重载:__isset() __unset _SET __GET
d) 方法重载:__call() __callstatic()
e) 序列化:__sleep() 反序列化:__wakeup()
f) 字符串:__toString(),__invoke(),__set_state()
g) 克隆:__clone()
H. 魔术常量:
__LINE__ 文件中的当前行号。
__FILE__ 文件的完整路径和文件名。
__DIR__ 文件所在的目录。
__FUNCTION__ 函数名称。
__CLASS__ 类的名称。
__TRAIT__ Trait 的名字。
__METHOD__ 类的方法名。
__NAMESPACE__ 当前命名空间的名称。
I. 对象系统函数
is_object():判断是否是一个“对象”。
get_object_vars():获得一个对象中所具有的属性。是一个序列名称(数组)
J. 类系统函数
class_exists():判断一个类是否存在(就是是否定义过了)。
interface_exists():判断一个接口是否存在(就是是否定义过了)。
get_class():获得一个对象的“所属类”(结果是一个类名字符串)
get_parent_class():获得一个对象的“所属父类”(结果是一个类名字符串)
get_class_methods():获得一个类中所定义的所有方法。是一个序列方法名(数组)
get_class_vars():获得一个类中所定义的所有属性。是一个序列名称(数组)
get_declared_classes():获得所有已经定义过的“类名”(包括系统中的类),也是一个序列名(数组)。
K. 其他:
object 数组转化为对象
serialize 序列化 unserialize 反序列化
file_get_contents 将整个文件读入一个字符串 file_put_contents 将一个字符串写入文件
二、 Mysql
A. 服务器操作
mysql_get_client_info — 取得 MySQL 客户端信息
mysql_get_host_info — 取得 MySQL 主机信息
mysql_get_proto_info — 取得 MySQL 协议信息
mysql_get_server_info — 取得 MySQL 服务器信息
mysql_errno — 返回上一个 MySQL 操作中的错误信息的数字编码
mysql_error — 返回上一个 MySQL 操作产生的文本错误信息
mysql_list_processes — 列出 MySQL 进程
mysql_data_seek — 移动内部结果的指针
mysql_db_query — 发送一条 MySQL 查询
mysql_drop_db — 丢弃(删除)一个 MySQL 数据库
mysql_escape_string — 转义一个字符串用于 mysql_query
mysql_affected_rows — 取得前一次 MySQL 操作所影响的记录行数
mysql_info — 取得最近一条查询的信息
mysql_insert_id — 取得上一步 INSERT 操作产生的 ID
mysql_thread_id — 返回当前线程的 ID
mysql_real_escape_string — 转义 SQL 语句中使用的字符串中的特殊字符,并考虑到连接的当前字符集
B. 数据库操作
mysql_list_dbs — 列出 MySQL 服务器中所有的数据库
mysql_list_fields — 列出 MySQL 结果中的字段
mysql_list_tables — 列出 MySQL 数据库中的表
mysql_pconnect — 打开一个到 MySQL 服务器的持久连接
mysql_ping — Ping 一个服务器连接,如果没有连接则重新连接
mysql_query — 发送一条 MySQL 查询
mysql_select_db — 选择 MySQL 数据库
mysql_set_charset — 设置客户端的字符集
mysql_stat — 取得当前系统状态
mysql_unbuffered_query — 向 MySQL 发送一条 SQL 查询,并不获取和缓存结果的行
C. 查询结果集操作
mysql_tablename — 取得表名
mysql_close — 关闭 MySQL 连接
mysql_connect — 打开一个到 MySQL 服务器的连接
mysql_create_db — 新建一个 MySQL 数据库
mysql_db_name — 取得结果数据
mysql_client_encoding — 返回字符集的名称
mysql_fetch_array — 从结果集中取得一行作为关联数组,或数字数组,或二者兼有
mysql_fetch_assoc — 从结果集中取得一行作为关联数组
mysql_fetch_field — 从结果集中取得列信息并作为对象返回
mysql_fetch_lengths — 取得结果集中每个输出的长度
mysql_fetch_object — 从结果集中取得一行作为对象
mysql_fetch_row — 从结果集中取得一行作为枚举数组
mysql_field_flags — 从结果中取得和指定字段关联的标志
mysql_field_len — 返回结果中指定字段的长度
mysql_field_name — 取得结果中指定字段的字段名
mysql_field_seek — 将结果集中的指针设定为制定的字段偏移量
mysql_field_table — 取得指定字段所在的表名
mysql_field_type — 取得结果集中指定字段的类型
mysql_num_fields — 取得结果集中字段的数目
mysql_num_rows — 取得结果集中行的数目
mysql_free_result — 释放结果内存
mysql_result — 取得结果数据
来源:oschina
链接:https://my.oschina.net/u/2932102/blog/800888