Blogger Information
Blog 15
fans 0
comment 0
visits 12377
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
常用字符串查询替换函数的理解应用及usort()对二维数组的排序应用 20180827课后作业
一点蓝的博客
Original
769 people have browsed it

本次作业包含了数组排序中较为复杂的的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();及使用自定义回调对键名进行排序


Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments