博主信息
博文 34
粉丝 0
评论 0
访问量 39339
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
usort()二维数组的排序+str_replace(), substr_replace(),substr(),strstr(),strpos()
Belifforz的博客
原创
1116人浏览过

 1.usort()二维数组的排序

实例

<?php
//usort()多维数组的排序
function paixu($m,$n){
   //$m $n是二维数组,
    $res = $m['grade'] - $n['grade'];
    switch ($res){
        case($res < 0):
            return -1;//这种情况就是升序
            break;
        case($res > 0):
            return 1;
            break;
        case($res == 0):
            return 0;
            break;
}}
$stu = [
    ['name' => '张三', 'grade' => 9],
    ['name' => '李四', 'grade' => 70],
    ['name' => '王五', 'grade' => 64],
    ['name' => '赵六', 'grade' => 83],
    ['name' => '赵六', 'grade' => 51],
    ['name' => '赵六', 'grade' => 79]
];
echo '排序之前:',var_export($stu,true),'<hr>';
//用户自定义排序规则
usort($stu,'paixu');
echo '排序之后:',var_export($stu,true),'<hr>';

运行实例 »

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

2.str_replace(), substr_replace()

实例

<?php
/**
 * 三个最基本最常用的子串查询函数
 */
//1. substr($str, $offset, $length):只知道要获取子串的位置,精确查询
$str = "To be, or not to be - that is the question";

// substr(), 索引从11开始的剩余内容,根据位置查询
echo substr($str, 22), '<br>';
echo substr($str, 0,19), '<br>'; // 区间查询,0开始取19个
echo substr($str, -8), '<br>'; // 区间查询,从后面开始 取8个

//strstr($str1, $str2,bool)
//第一个参数:要查询的字符串
//第二个参数:要查找的字符
//第三个参数:为true时,仅返回要查找的字符前面的内容,不包括字符本身
$email = 'zhangsan@163.cn';
// 查询@是否存在,默认返回@以及后面的内容
echo strstr($email, '@'),'<br>';
// 传入第三个参数:true,仅返回@符之前的内容(不包含@)
echo strstr($email, '@',true),'<br>';
echo strstr($email, '@',true),strstr($email, '@'),'<br>';


// strpos($str1, $str2, $start): 根据内容查询,返回字符串首次出现的位置
echo strpos($str, 'that');//起始位是0,即开头的To的T是第0位置上的第一个字符

运行实例 »

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

3.substr(),strstr(),strpos()

实例

<?php
/**
 * 字符串查找并替换的二个函数
 */

// str_replace(), substr_replace()
$str = '生命的意义不在于长短,而在于生命的内涵。';
//1.str_replace()
echo str_replace('生命', '生活', $str), '<br>';
//删除式替换
echo str_replace('而', '', $str), '<br>';
// 一次性替换多个内容
echo str_replace(['生命','意义'],'生活', $str), '<br>';
echo str_replace(['生命','意义'],['生活','含义'], $str), '<br>';
// str_ireplace(): 忽略大小写的替换
echo '<hr>';
// substr_replace()

echo substr_replace($str,'To be, or not to be - that is the question',0), '<br>';
echo substr_replace($str,'To be, or not to be - that is the question',0,strlen($str)), '<br>';

echo substr_replace($str, '生活的',0,9),'<br>';//中文字符占三个字节
echo substr_replace($str, '含义',9,6),'<br>';
// 删除式替换
echo substr_replace($str, '',33,3);

运行实例 »

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


批改状态:未批改

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学