博客列表 >常用字符串查询替换函数的理解应用及usort()对二维数组的排序应用 20180827课后作业

常用字符串查询替换函数的理解应用及usort()对二维数组的排序应用 20180827课后作业

一点蓝的博客
一点蓝的博客原创
2018年08月28日 17:28:34758浏览

本次作业包含了数组排序中较为复杂的的usort()多维数组排序应用方法,以及字符串的查询(明确字串位置精确查询substr(),指定字串返回该内容及以后的内容或者传入第三个参数true来返回之前的内容strstr(),根据内容查询返回字符串的首次出现位置数值strpos())和查找替换函数(查找并替换str_replace(),指定位置或范围查找替换substr_replace())

作业一二三实例

<?php
/**
 * Created by PhpStorm.
 * User: suyh93
 * Date: 2018/8/28
 * Time: 15:15
 */
echo '<h3>作业一:常用三个字串查询函数</h3>';
echo '<hr><h4>substr(字符串,起始位置,长度)只要了解字串的位置就可以精确查询</h4>';
$str = 'My monthly salary is 1000';
echo '<br>从第11个开始输出<br>',substr($str,10);
echo '<br>从第11个开始输出,取6个<br>',substr($str,10,6);
echo '<br>从倒数第四个输出<br>',substr($str,-4);
echo '<hr><h4>strstr($str1,$str2,bool)查询$str2是否存在,存在返回$str2及之后内容;传入第三个参数true返回$str2之前的内容不包括$str2</h4>';
$company = 'suyh93一点蓝';
echo '输出h93一点蓝:<br>',strstr($company,'h');
echo '<br>输出suy:<br>',strstr($company,'h',true);
echo '<hr><h4>strpos($str1,$str2)根据$str2内容查询返回字符串首次出现的位置</h4>';
echo strpos($str,'salary');
echo '<hr><h3>作业二:字符串查找并替换的两个函数</h3>';
echo '<hr><h4>str_replace(search内容,replace内容,$str)查找并替换(单个内容或多个内容,或删除式替换)</h4>';
echo '原字符串:',$str1 = 'My monthly salary is 1000','<br>';
echo '替换后:',str_replace('1000','10000yuan',$str1);
echo '<br>替换后:',str_replace(['monthly','salary','1000'],['best','friend','snooker'],$str1);
echo '<hr><h4>substr_replace($str,search内容,起始位置/结束位置)精确位置查找并替换</h4>';
echo '原字符串:',$str2 = 'My monthly salary is 1000','<br>';
echo '替换后:',substr_replace($str2,' best friend is snooker',2);
echo '<br>替换后:',substr_replace($str2,' 1000yuan',-4);
echo '<hr><h3>作业三:usort()给二维数组子数组的值进行自定义排序</h3>';
$company = [['name'=>'Suyh93','products'=>'computer','phone'=>'56748678'],['name'=>'Joe','products'=>'mobile','phone'=>'10000000'],['name'=>'Admin','products'=>'666888','phone'=>'18888888888']];
echo '<pre>原数组',var_export($company,true),'<br><br>';
usort($company,function ($a,$b)
{
   return strcmp($a['name'],$b['name']);
});
echo '<pre>将多维子数组第二个元素排序后',var_export($company,true),'<br><br>';

运行实例 »

点击 "运行实例" 按钮查看在线实例

本地运行截图1:

082701.jpg

作业二截图:

082702.jpg

作业三截图:

082703.jpg

总结:

1:三个常用查询方法:substr(字符串,起始位置,长度)只要了解字串的位置就可以精确查询;strstr($str1,$str2,bool)查询$str2是否存在,存在返回$str2及之后内容;传入第三个参数true返回$str2之前的内容不包括$str2;strpos($str1,$str2)根据$str2内容查询返回字符串首次出现的位置;(还有字符串的过滤与填充,大小写转换,特殊字符及标签处理等本次作业没有应用,也需要熟悉理解)

2字符串的查找替换的两个函数:str_replace(search内容,replace内容,$str)查找并替换(单个内容或多个内容,或删除式替换);substr_replace($str,search内容,起始位置/结束位置)精确位置查找并替换;

3关于数组排序作业仅运用usort(数组,匿名函数)进行了了多维数组中子数组值的自定义排序,其中运用到strcmp()比较字符串;其余的值升序降序sort();rsort();键升序降序ksort();krosrt();及使用自定义回调对键名进行排序


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议