一、数据类型转换
指的是将数据(变量)的值转换成目标数据类型。
PHP中有两种数据类型转换方式:自动转换,强制转换
自动转换:系统根据操作所需要的类型将变量的值进行对应类型的转换
自动转换都是系统本身所做的事情,不需要用户去干预。
强制转换:我们根据具体的需求,将变量的值事先转换成所需的数据类型
int,integer:整型,将数据转换成整型
bool,Boolean:将数据值转换成布尔型
float:转换成浮点型
string:转换成字符型
array:转换成数组类型
object:转换成对象类型
查看数据的类型:
var_dump()可以输出数据的类型和值
gettype( )获取数据的类型,只能获取类型
settype($var,'类型')设置类型的值 等价于 (数据类型)$var
二、判断数据类型
PHP提供了一些列函数来判断数据的类型。函数都是以is_开头,后面跟数据类型。
如果是目标类型则返回TRUE,否则返回FALSE
is_bool
is_float
is_integer
is_object
is_array
is_string
is_resource
is_scalar:判断一个变量的值是否是标量类型
is_null
is_numeric:检测变量是否为数字或数字字符串
三、文件包含
include"文件路径"
include_once "文件路径"
require "文件路径"
require_once "文件路径"
include和require的区别:
相同点:都能够包含文件
不同点:include会尝试着去包含,如果包含不到,会提示警告错误,但是不会影响当前自身脚本的执行;require一定会去包含文件,而且包含的文件必须不能出错,否则会终止当前自身脚本的执行
四、PHP提供了三种方式来终止脚本执行:return,die,exit
五、系统常用函数
字符串函数
strlen:获取字符串的长度,获取的是字符串的字符的长度,字符串间的空格页计算在内
substr (目标字符串 , 截取起始位置 [, 截取长度] ),如果没有截取长度,则默认截取到最后。字符串的起始位置从0开始,第一个字符是0。
strtolower:将字符串变成小写
strtoupper:将字符串变成大写
ucfirst:将字符串首字母大写
strrev:将字符串反过来
strpos:获取字符串中某个字符首次出现的位置
strrpos:获取字符串中某个字符最后一次出现的位置
strchr:是strstr函数别名,查找某个字符在字符串中首次出现的位置,并返回该位置到字符串最后的整个字符串
strrchr查找某个字符在字符串中最后出现的位置,并返回该位置到字符串最后的整个字符串(获取文件后缀名)
trim:去除一个字符串两遍的(最外边)的空格(或者其他字符)
时间函数
time:得到当前时间的时间戳,是一个整型数据
date:将指定的时间戳,按照指定的字符串格式进行输出。输出的格式化有固定的参数
string date ( string $format [, int $timestamp ] ),$format是一个包含可以识别参数的字符串,第二个参数是一个整型的时间戳,如果没有提供则默认是当前时间的时间戳。
数学函数
abs:获取数值的绝对值
floor:向下取整
ceil:向上取整
round:四舍五入
rand:随机取得指定范围或者0到整型最大值之间的数
mt_rand:随机取得指定范围或者0到整型最大值之间的数,比rand效率高
六、数组基本语法
关键字array
显示数组语法
$arr = array(元素1,元素2,元素3…); //数据类型一定是数组
隐式数组语法
$arr[] = 元素1; //定义一个$arr变量,将元素1添加进来
$arr[] = 元素2; //将元素2添加到$arr变量中
遍历数组
统计数组长度:count();
for循环遍历数组
foreach 遍历数组
语法:foreach(数组 as 键值对$key => $value){
//使用$key当做当前元素的下标
//使用$value当做当前元素的值
}
七、数组相关函数
key:获取当前数组当前指针所指向元素的下标
current:获取当前数组指针所指向的元素的值
next:返回数组当前指针所指向的下一位的元素的值,并指针下移一位
注意:如果当前指针已经在数组元素的最后一个元素,那么next返回FALSE,指针依然下移一位,移除了数组
prev:返回当前指针所在位置的前一个元素的值,并且将指针向前移动一位
注意:如果当前指针已经在数组元素的第一个元素,那么使用Prev将会将数组的指针移除数组,返回FALSE
如果指针一旦移除数组,那么都不能通过prev或者next将指针拉回来。
end :获取数组元素最后一个元素的值,指针也会指向最后一个元素
reset:重置数组的指针,让数组指针指向第一个元素,如果成功返回第一个元素的值,失败返回FALSE
array_keys:获取数组的所有下标,返回一个索引数组,数组元素的值都是目标数组的下标
array_values:获取数组所有的值,返回一个索引数组
array_push:从数组的尾端加入一个元素(压栈)
array_pop:从数组的尾端弹出一个元素(出栈)
array_shift:从数组头部将数组元素移出
array_unshift:从数组的头部插入数据.
数组与字符串之间的转换
explode:将字符串按照指定的分隔符分解成一系列小的字符串,都成为数组的一个元素
implode:将一个数组里的所有的元素按照某个分隔符进行拼接,变成一个字符串
range:按照ASCII码能够指定范围,自动生成数组元素的函数 例子 range(‘a’,'z');
array_rand:从数组中随机取出指定长度的个数的元素下标
shuffle:将原来的数组里的元素打乱
数组合并:+和array_merge()
+:保存第一个数组的所有元素,如果后面的数组的元素与前面数组的元素的下标相同,那么就忽略,如果不同则加到第一个数组里,最终返回一个数组
array_merge():先保留第一个数组的所有元素,如果后面数组的元素与前面数组的元素关联下标相同则用后面数组的元素覆盖前面的;如果是索引下标,直接添加到第一个数组后面,重置索引。
未经允许不得转载:445IT之家 » PHP之数据类型转换与数组