Blogger Information
Blog 36
fans 0
comment 0
visits 28402
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
数组的排序以及字符串的查找和替换总结——2018年8月27日
Jackson
Original
869 people have browsed it
  1. 数组的排序

    数组的排序主要是根据键名和值来进行升序或降序的排序,key:ksort、uksort、krsort

    值:sort、rsort,usort,代码如下:


  2. 实例

    //1.升序
    $arr = [23,34,11,55,66,22,1,4];
    sort($arr);//返回布尔值
    //var_dump(sort($arr));
    echo var_export($arr,true),'<hr>';
    //2.降序
    $arr = [23,34,11,55,66,22,1,4];
    rsort($arr);
    echo var_export($arr,true),'<hr>';
    //3.回调 usort 参数里的回调函数只返回1,-1,0这3个值
    $arr = [23,34,11,55,66,22,1,4,1];
    usort($arr, function ($var1,$var2){
        return $var1 >$var2 ? 1:-1;
    });
    echo var_export($arr,true),'<hr>';
    //usort 二维数组的排序
    $stu = [
        ['name'=>'林心如','grade'=>98],
        ['name'=>'范冰冰','grade'=>55],
        ['name'=>'左小青','grade'=>73],
    ];
    usort($stu, function ($var1,$var2){
        //return $var1['grade']>$var2['grade']? 1:-1;
        return strcmp($var1['grade'],$var2['grade']);
        //strcmp比较字符串的大小,先比较长度,再比较字符串大小,区分大小写
    });
    print_r($stu);
    echo '<hr>';
    
    //根据键名进行排序ksort
    $lang = ['html'=>'标记语言','css'=>'样式表','js'=>'前端脚本','php'=>'后端脚本'];
    ksort($lang);
    echo var_export($lang),'<hr>';
    $lang = ['html'=>'标记语言','css'=>'样式表','js'=>'前端脚本','php'=>'后端脚本'];
    krsort($lang);
    echo var_export($lang),'<hr>';
    
    //根据键名的第二个字母进行排序
    $lang = ['html'=>'标记语言','css'=>'样式表','js'=>'前端脚本','php'=>'后端脚本'];
    uksort($lang, function ($m , $n){
        $a = substr($m,1,1);//substr()截取子字符串
        $b = substr($n,1,1);
        return strcmp($a,$b);
    });
    
    print_r($lang);

    运行实例 »

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

    2.str_replace(), substr_replace() 替换字符串

    str_repalce可以替换整个字符串或部分字符串,而substr_replace的查找更加精确,要指定替换开始的位置以及替换的长度,默认会替换后面的整个部分。  代码如下:


    实例

    //str_replace()/substr_replace() 替换
    echo str_replace($str,'java',$str);
    echo '<hr>';
    echo substr_replace($str,'was',4,2);

    运行实例 »

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

    3.substr(),strstr(),strpos() 查找字符串

    这三个函数都可以用来查找字符串,substr用来截取子字符串,strstr查找的是前面部分或者后面部分,而strspos则是查找字符串首次出现的位置。 代码如下:


    实例

    //1.substr() 获取子字符串,字符串位置从0开始
    $str = 'php is the best language';
    echo substr($str,7,4),'<hr>';
    //2.strstr()、strpos()
    //strstr:返回查找字符串到结尾,区分大小写,true就返回前面部分,不包括查找的字符串
    echo strstr($str,'t',true),'<br>';
    //strpos(): 查找首次出现的位置
    echo strpos($str,'is'),'<hr>';

    运行实例 »

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

    总结:字符串的查找和替换都区分大小写的,并且不会影响原来的字符串。
Correction status:Uncorrected

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