常用字符串函数小结

Original 2018-11-22 15:14:14 195
abstract://substr($str,$start,$length)截取字符串   注:如果$start,$length均为负数,则$start的绝对值需要大于$length的绝对值,否则会返回空。 $str = 'validate($data,User.register)'; echo substr($str,5),'&l
//substr($str,$start,$length)截取字符串   注:如果$start,$length均为负数,则$start的绝对值需要大于$length的绝对值,否则会返回空。
$str = 'validate($data,User.register)';
echo substr($str,5),'<br>';//从索引为5的位置开始,返回后面的所有字符串
echo substr($str,5,5),'<br>';//从索引为5的位置开始,返回5个长度的字符串
echo substr($str,-5),'<br>';//从结尾开始第5个字符开始返回剩余的所有字符串  ==substr($str,-5,5)
echo substr($str,-10,5),'<br>';//返回从结尾开始第10个字符开始5个长度的字符串
echo substr($str,10,-5),'<br>';//返回从索引为10的字符开始,到结尾开始第5个字符的字符串
echo substr($str,-12,-5),'<hr>';//返回从索引为10的字符开始,到结尾开始第5个字符的字符串
//strstr($str,$search,$bool)
echo strstr($str,'$'),'<br>';//查询$是否存在,并返回从$开始的剩余字符串
echo strstr($str,'$',true),'<hr>';//查$询是否存在,并返回$之前的所有字符串(不包含$)
//strpos($str,$find,$start) 注:字符串位置从0开始,所以在判断是不能直接进行0、1判断,应该判断返回值是否是false。
if(strpos($str,'v') !== false) echo 'exists';
else echo 'not exists';

echo '<hr>';
//str_replace($find,$replace,$str)
echo str_replace('$','@@',$str),'<br>';//替换指定字符
echo str_replace('$','',$str),'<br>';//删除指定字符
echo str_replace(['$','(',')'],['**','<<','>>'],$str),'<hr>';//删除指定字符

//substr_replace($str,$replacement,$start,$length)
echo substr_replace($str,'($data)',3),'<br>';//从第三个字符位置开始,用($data)替换其后面的字符串
echo substr_replace($str,'($data)',-3),'<br>';//从结尾开始第三个字符位置开始,用($data)替换其后面的字符串
echo substr_replace($str,'($data)',3,2),'<br>';//从第三个字符位置开始,用($data)替换其后面2个字符长度的字符串
echo substr_replace($str,'',3,5),'<br>';//删除指定区间(从第三个字符位置开始,用空字符串替换其后面5个字符长度的字符串)

//urlencode($url):在特殊字符前加%,避免服务器解析出现歧义
$url = 'http://www.tptest.com/index.php/user/login/login';
echo $url,'<br>';
echo $url = urlencode($url),'<br>';
echo '<a href="'.urldecode($url).'">test测试网页</a>','<br>';

//http_build_query()生成动态查询字符串
//?p=5
//?cate_id20&art_id=10
echo http_build_query(['cate_id'=>3,'art_id'=>43]),'<br>';
$url = 'http://www.tptest.com/index.php/user/login/login';
//parse_url()解析url返回其组成部分
$url = parse_url($url);
echo '<pre>',var_export($url,true),'</pre><br>';

//json相关
//约定:必须是utf8编码;不能处理资源类型
$name = '王鸿举';
echo json_encode($name),'<br>';
$arr = ['weight' => 60,'height' => 160,'name' => '张红'];
echo var_export(json_encode($arr),true),'<br>';
$obj = new  \stdClass();
$obj->name = '张红';
$obj->info = ['weight' => 60,'height' => 160,'name' => '张红'];
echo json_encode($obj),'<br>';

$json_arr = '{"weight":60,"height":160,"name":"\u5f20\u7ea2"}';
print_r(json_decode($json_arr));


Correcting teacher:韦小宝Correction time:2018-11-22 16:30:51
Teacher's summary:嗯!写的很不错!总结的很完整!继续加油吧!!!

Release Notes

Popular Entries