php 变量常用函数,PHP变量常用函数总结2

摘要:一.最常用的字符串查询函数    + 字符串查询,主要是根据特征进行,要么根据目标字符串位置,要么根据目标字符串的值    + substr($str,$offset,$length): 根据位置查询,获取指定位置或区间内的字符串    + strstr($str1,$str2,

一.最常用的字符串查询函数

+ 字符串查询,主要是根据特征进行,要么根据目标字符串位置,要么根据目标字符串的值

+ substr($str,$offset,$length): 根据位置查询,获取指定位置或区间内的字符串

+ strstr($str1,$str2,$bool):查询字符串首次出现的位置,返回字符串

+ strpos($str1,$str2,$start):查询字符串首次出现的位置,返回所在位置

1.substr($str,$offset,$length);   //参数1,指定字符串 参数2:起始位置 参数3截取长度  返回字符串$str = 'PHP is the best programming language';

$str2 = 'PHP是世界上.最好的变成语言么?';

echo substr($str2,0,10).'...
'; //出现了乱码

echo mb_substr($str2,0,10).'...
';    //mb_substr 截取中文好用,一个汉字算一个

echo substr($str,11),'
';    //从索引为11的位置开始截取到最后并返回

//负数,则结尾开始取

echo substr($str,-3),'
';    //age        从到数第三个开始截取到最后

echo substr($str,-8,4),'
';    //lang    从倒数第八个开始 截取4个

2.strstr($str1,$str2,$bool)查找字符首次出现的位置,并返回剩下部分,没找到返回false  参数1:目标字符串,参数2:要查找的值,参数3,为true 则返回要查找的字符串前面的字符串(不包括要查找的字符串)$email = 'admin@php.cn';

//查询@是否存在 ,并返回@符后面的内容(包括@符号)

echo strstr($email,'@').'
';

//查询@是否存在并返回@符号前面的内容(不包括@符)

echo strstr($email,'@',true).'
';

3.strpos($str,$str1,$start):查找字符串首次出现的位置,并返回位置  参数1:被查找的字符串 ,参数2:要查找的值 参数3:起始位置echo (strpos($str,'best')) ? 'best存在' : '没找到';//找到了输出存在  没找到输出没找到

二.字符串的查找与替换

+ str_replace($str1,$str2,$str3):将字符串中的部分内容,用目标字符串进行替换

+ substr_replace($str,$str2,$offset,$size): 功能和str_replace()类似,但指定了替换区间

1.str_replace():字符串替换 参数1:要查找的字符,参数2:替换后的字符,参数3:在哪个字符串中替换  还有一个忽略大小写的操作   str_ireplace()的$str = '诸葛亮是一个政治家大谋士';

//1.大谋士 换成 军事家

echo $str.'
';

echo str_replace('大谋士','军事家',$str).'
';

//2.删除指定字符,用空字符进行替换(空不是空格)    也就是第二个参数为''

echo str_replace('诸葛亮','',$str).'
';

//3.要被替换多个字符串,可以放在数组中

echo str_replace(['诸葛亮','政治'],['天','啊'],$str).'
';

//忽略大小写替换

$str2 = 'www.PHP.cn----WWW.php.net';

echo str_replace('php','HTML',$str2).'
';

echo str_ireplace('php','HTML',$str2).'
';

echo '


';

2.substr_replace():与str_replace()类似 只是指定了目标字符串的匹配区间  参数1:目标字符串 参数2 替换之后的字符串,参数3 起始位置,参数4:替换长度//从0开始,知道结束,用新字符串替换:刘备与孙权孰强孰弱    也就是全部替换  不传最后一个参数

$str = '诸葛亮是一个政治家大谋士';

echo $str.'
';

echo substr_replace($str,'刘备与孙权孰强孰弱',0).'
';

//第四个参数就是要替换的长度

echo substr_replace($str,'刘备与孙权孰强孰弱',0,strlen($str)).'
';    //传入字符串总长度 就是全部替换

//指定位置插入字符串

echo substr_replace($str,'曹操',18,6 ).'
';    就是从18的位置向后6个进行替换

echo substr_replace($str,'曹操',18,0 ).'
';    //传入0就是插入字符串不删除原有字符串

//区间删除 ,将要替换的内容置空就可以了

echo substr_replace($str,'',0,9).'
';

三.其他常用的字符串函数

+ urlencode($url) 对url地址字符串进行编码

+ http_build_query($arr):生成url动态查询字符串

+ json_encode($var):将数据转为json格式

+ json_decode($str):将json格式的字符串解析还原为变量

1. urlencode($url):就是在特殊字符前面加上一个%,防止服务器解析出现歧义  其反操作就是urldecode($url)$url = 'http://www.php.cn/';

echo $url . '
';

$url = urlencode('http://www.php.cn/');

echo $url;    //将特殊字符 :,/进行编码      http%3A%2F%2Fwww.php.cn%2F

echo '


';

$url = urldecode($url);        //反操作 还原

echo 'php中文网';

echo '


';

2.http_build_query()生成动态查询字符串    parse_url($url) 解析url地址 返回一个数组echo http_build_query(['cate_id' => 3, 'art_id' => 10]);

$url = 'http://www.php.cn/course.html?p=5';

$url2 = parse_url($url);    //解析当前url地址

echo '

' . var_export($url2, true) . '
';

//array (

//    'scheme' => 'http',

//    'host' => 'www.php.cn',

//    'path' => '/course.html',

//    'query' => 'p=5',

//)

3.json相关的函数

3.1二个约定: 1.必须是utf8编码,2.不能处理资源类型resource

3.2.1.json_encode():将数据进行json编码,就是转为json格式

3.2.2.json_decode():将json格式的字符串,解析还原成变量//变量

$girl = '孙尚香';

echo json_encode($girl) . '
';    //"\u5b59\u5c1a\u9999"

//数组    [胸围,腰围,臀围]

$bwh = ['bust' => 88, 'waist' => 85, 'hips' => 90];

echo json_encode($bwh) . '
';        //{"bust":88,"waist":85,"hips":90}

//对象

$obj = new stdClass();

$obj->name = '甄姬';

$obj->age = 30;

$obj->bwh = ['bust' => 80, 'waist' => 78, 'hips' => 80];

echo json_encode($obj) . '
';    //{"name":"\u7504\u59ec","age":30,"bwh":{"bust":80,"waist":78,"hips":80}}

//json_decode();默认返回的都是对象

$json = '{"bust":88,"waist":85,"hips":90}';

$res = json_decode($json);

echo gettype($res).'
';        //object

echo '胸围是'.$res->bust;

//以数组方式返回    第三个参数穿true 则以数组方式返回

$res = json_decode($json,true);

echo gettype($res).'
';        //array

echo '臀围是'.$res['hips'];貌似还学到了些奇怪的东西----滑稽脸

批改老师:韦小宝批改时间:2018-11-23 15:40:57

老师总结:作业是一直写的都很不错!赞!很多知识点都是很奇怪的!往后就知道了!继续加油吧!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值