陈广安个人网站
会写代码的咸鱼
陈广安个人网站阿里云盘资源
陈广安个人网站网盘资源搜索
“ 梦想还是要有的,万一实现了呢!”
— 马云

6.23php字符串函数

创建时间:2017-02-23

字符串的定义

界定符 <<<
单引号跟双引号的区别:
双号所包含的变量会被自动被替换成变量实际的值,而单引号中包含的变量则按普通的字符串输出
双引号里的变量用{ $xxx}扩起来
<<<字符串名 ——需要放的值,一般是文本—— 字符串名
<<<"字符串名" ——需要放的值,一般是文本—— 字符串名

————————————————————————————————
字符串函数

strlen($变量名|字符串);———— 求字符串长度,按字节计算

mb_strlen($变量名|字符串,"可选参数");———— 求字符串长度,默认按字节计算,第二个参数传编码,可以按照编码的字节计算

strtoupper($变量名|字符串);———— 把字母变成大写

strtolower($变量名|字符串);———— 将字母变为小写

ucfirst($变量名|字符串);————将字符串的首字母变为大写

ucwords($变量名|字符串);————将每个单词的首字母变为大写

trim($变量名|字符串);———— 删除首尾的空白或其它字符

ltrim($变量名|字符串,"可选参数");———— 删左边的空白或其它字符,第二个可选参数,可以接需要删除的字符名称

rtrim($变量名|字符串,"可选参数");———— 删右边的空白或其它字符,可以接需要删除的字符名称


标签处理函数
htmlentities($变量名|字符串);————将字符转为html实体字符

html_entity_decode();//将HTML实体转为字符串

htmlspecialchars($变量名|字符串);————把预定义的字符 "<" (小于)和 ">" (大于)转换为 HTML 实体:

addslashes($变量名|字符串);————在预定加预定的字符前加斜杠,自动将单引号 双引号 反斜杠转译

trip_tags($变量名|字符串);————剥去字符串中的 HTML、XML 以及 PHP 的标签
echo strip_tags("Hello world!");
运行结果:Hello world!



substr_count($变量名|字符串,"需要计算的字符");计算子串在父串中出现的次数

strpos($变量名|字符串,"需要定位的字符",可选参数);———— 定位字符的位置,可选参数指定位置开始查找
可以用来用来流程控制判断字符串中是否存在某个字符,如果没有返回false

if(strpos($gt,"qq")){
echo "存在QQ字符";
}else{
echo "不存在QQ字符";
}


substr($变量名|字符串,起始,可选参数) 在一个字符串中截取一段字符,可选参数指定截取字符的个数

str_pad($变量名|字符串,字符串被填充的长度,可选参数,可选参数);———— 将指定字符串填充成指定长度的字符串
第一个参数给需要填充的字符,第二个参数给填充的位置默认是STR_PAD_RIGHT

sprintf($变量名|字符串,"白菜%0.2f元一斤",1.98234);把一个格式化的字符串,输入到一个文件中

number_format($变量名|字符串);————对数字按千分位进格式化

strchr($变量名|字符串,"需要指定的字符");————在父串中查找指定的字符首次出现的位置到末尾的字符

strrchr($变量名|字符串,"需要指定的字符");————在父串中查找指定的字符最后出现的位置到末尾的字符,可以用来获取文件的后缀

str_ireplace("需要被替换的字符",被替换后的字符,$变量名|字符串);————在字符串中查找指定的字符,然后用替换字符串替换,不区分大小写

str_replace("需要被替换的字符",被替换后的字符,$变量名|字符串);在字符串中查找指定的字符,然后用替换字符串替换 区分大小写

substr_replace($变量名|字符串,"替换后的字符",指定字符的开始位置,可选参数);
————在字符串中查找一段字符,然后用替换字符串替换,可选参数用来发挥字符串的长度,默认是整个字符串

parse_str($_SERVER["QUERY_STRING"]);———— 把查询字符串解析到变量
parse_str($_SERVER["QUERY_STRING"],$数组名);———— 把查询字符串解析到数组

$数组名称 = parse_url ($_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"]);———— 把url地址解析一个数组中

preg_replace("/正则/","", $变量名|字符串);———— 用正则去查找与正则匹配的字符串,然后加它替换

preg_match("/正则/", $变量名|字符串,$数组名称);———— 用正则去查找与正则匹配的字符串,然后把匹配字符串,放入一个数组中

preg_match_all("/正则/", $变量名|字符串,$数组名称);———— 用正则去多次查找与正则匹配的字符串,然后把匹配字符串,放入一个二维数组中

preg_split("/正则/",$变量名|字符串);———— 用正则去分割与正则匹配的字符串

ord($变量名|字符串);————返加字符的ascii



PHP的加密跟解密

md5($变量名|字符串);————把一个字符串变成一个32位的串,加密

sha1($变量名|字符串);————把一个字符串变成一个40位的串

hash_hmac("加密算法|md5|sha1", $变量名|字符串, $key|XXX);—————把一个字符串用散列算法计算散列值,然后用密钥加密

base64_encode();///将字符串以 BASE64 编码,得到64位数的字符

base64_decode();//将BASE64 编码过的字符串进行解码,

//演示,用base64_encode()编码然后base64_decode()解码
$string = base64_encode($x1.".".$x2);//将变量x1连上小数点再连上变量x2进行编码,得到64位数的字符串

$array = explode('.',base64_decode($string));//先用base64_decode()解码,得到一个字符串,然后用explode将字符以小数点为间隔分割字符串,得到数组


字符串跟数组的 - 转换|加工

serialize();//将数字转为字符串,不会丢失其类型和结构
$arrStr = serialize($arr);

unserialize();//将经过serialize转换的,还原其数组类型结构

$arrData = unserialize($arrStr);


implode("需要分隔的符号",$数组名|字符串);———— 将一维数组变成字符串 等价于join

explode("分隔符",$变量名|字符串);———— 把字符串变为数组