Blogger Information
Blog 38
fans 0
comment 2
visits 23945
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
数组排序、字符串与数组之间的转换 、长度计算和查找与替换—4月18日
→忆指凡尘&的博客
Original
592 people have browsed it

大家好

      以下是我对数组排序、字符串与数组之间的转换 、长度计算和查找与替换的练习以及总结,若有不够全面和错误的地方望大家提出。

实例

<?php
/**
 *一. 正序: associate(关联的), key(键),前面加上这二个单词的首字母表示
 * 1. sort(&$arr, $flag) 按值升序排列,键名按索引方式重置
 * 2. asort(&$arr,$flag) 按值升序排列,键名保留与值的对应
 * 3. ksort(&$arr,$flag) 按键名升序排列,适合于关联数组,键值对应关系不变
 *
 * 二、反序: reversal 反转,函数前添加一个r即可
 * 1. rsort(&$arr, $flag):对数组逆向排序
 * 2. arsort(&$arr, $flag):对数组进行逆向排序并保持索引关系
 * 3. krsort(&$arr, $flag):对数组按照键名逆向排序
 *
 * $flag = SORT_NUMERIC (转为数字类型),SORT_STRING(转为字符类型)
 *
 *三、自定义回调函数进行排序: usort(&$arr, functoin($a, $b){ #code })
 * 注意: 仅对值进行排序,忽略键名(即会重置键名)
 */

$arr = ['name'=>'qi', 'age'=>29, 3=>true, 'a'=>'b'];
//格式化输出
echo '<pre>';
//正序且键名重置
sort($arr);
print_r($arr);
echo '<hr>';
//正序且键名保留
asort($arr);
print_r($arr);
echo '<hr>';
// 键名正序排列
ksort($arr);
print_r($arr);

//数组反转,忽略原键名,忽略类型分组排序
rsort($arr); 
print_r($arr);

//数组反转,保留键名,转为数字类型进行排序
arsort($arr, SORT_NUMERIC); 
print_r($arr);

//键名反转排序 转为字符类型进行排序
krsort($arr, SORT_STRING);
print_r($arr);


// 字符串函数:长度计算
// 1.strlen($str)
// 2.mb_strlen($str, $encoding)
$siteName = '好好学习aaa';

//1.strlen($str):获取字节表示的字符串长度
//utf8模式下,一个中文字符用三个字节表示
echo strlen($siteName),'<br>';

//2.mb_strlen($str, $encoding) :获取字符数表示的长度
echo mb_strlen($siteName),'<br>';
echo '<hr color="red">';


// 字符串函数:字符串与数组之间的转换
// str_split($str); //默认一个字符转为数组中的一个元素
// str_split($str,5); //5个一组进行转换
$a = 'a,b,c,d,e,f,g,';
str_split($a);
print_r(str_split($a,3));
echo '<hr color="red">';
//explode($delimiter,$str,$num):按分隔符,将字符串分割为数组,可指定数组元素数量,最后一个元素保存全部剩余数据
print_r(explode(',', $a,4));
//implode($glue, $str):按分隔符,将一维数组拼装成字符串,默认用空格分隔
$b = explode(',', $a);//将字符串转变为数组
echo implode('/',$b);//将数组转变为用/分割的字符串
echo '<hr color="red">';


// 字符串函数:查找与替换
$str = 'www.php.cn';
//1.strpos($str,$needle, $offset)查找字符串首次出现的位置
echo strpos($str, 'p'),'<br>'; //默认从头开始查找
echo strpos($str, 'p', 5),'<br>'; //从索引5开始查找

//2.strstr($str1,$str2),如果$str2是$str1的子串,返回子串,返回否则false
echo strstr($str, 'php'),'<br>';  //返回子串及后面部分
echo strstr($str, 'php', true),'<br>'; //参数true,会返回子串前面部分

echo '<hr>';
//3.str_replace($str1, $str2, $str3, $num):子串替换,
echo str_replace('www','http://www',$str), '<br>';

echo '<hr>';
// 4.substr_replace($str1,$str2,$str3,$start,$length):替换字符串的子串
//在$str中,从第5个索引位置起的2个字符,用'pppph'进行替换
echo substr_replace($str,'pppph', 5, 2);

运行实例 »

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

                                                                                 课程总结

1.正序: (1) sort(&$arr, $flag) 按值升序排列,键名按索引方式重置

           (2)asort(&$arr,$flag) 按值升序排列,键名保留与值的对应

           (3)ksort(&$arr,$flag) 按键名升序排列,适合于关联数组,键值对应关系不变

2.反序:(1)rsort(&$arr, $flag):对数组逆向排序

             (2) arsort(&$arr, $flag):对数组进行逆向排序并保持索引关系

             (3)krsort(&$arr, $flag):对数组按照键名逆向排序

               注:$flag = SORT_NUMERIC (转为数字类型),SORT_STRING(转为字符类型)

3.字符串函数:长度计算

            (1)strlen($str)—获取字节表示的字符串长度

            (2)mb_strlen($str, $encoding)—获取字符数表示的长度

4.字符串函数:字符串与数组之间的转换

     (1)str_split($str); 默认一个字符转为数组中的一个元素    str_split($str,5); 5个一组进行转换

     (2)explode($delimiter,$str,$num):按分隔符,将字符串分割为数组,可指定数组元素数量,最后一个元素保存全部剩余数                据— explode(',', $a,4) 在$a中按','进行分组,保留4个元素

     (3)implode('/',$b);//将数组转变为用/分割的字符串

5.字符串函数:查找与替换:(1)strpos($str,$needle, $offset)查找字符串首次出现的位置—strpos($str, 'p'); 默认从头开                                                      始 查找   strpos($str, 'p', 5); 从索引5开始查找

                                         (2)strstr($str1,$str2),如果$str2是$str1的子串,返回子串,返回否则false— echo strstr($str,                                                      'php'); 返回子串及后面部分     strstr($str, 'php', true);参数true,会返回子串前面部分

                                         (3)tr_replace($str1, $str2, $str3, $num):子串替换, —str_replace('www','http://www',$str);

                                         (4)substr_replace($str1,$str2,$str3,$start,$length):替换字符串的子串—                                                                                substr_replace($str,'pppph', 5, 2); 在$str中,从第5个索引位置起的2个字符,用'pppph'进                                                    行替换


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
Author's latest blog post