Blogger Information
Blog 61
fans 0
comment 0
visits 62850
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
字符串与数组的转换,数组的排序
Pengsir
Original
957 people have browsed it

字符串与数组的转换:

实例

<?php
header("content-type:text/html;charset=utf8");
echo '<h2>字符串与数组的转换</h2>';
$str='php,html,css,bootstrap,jquery';
//1.str_split()把字符串分割到数组中
echo '<pre>';
print_r(str_split($str));
echo '<hr color="red">';
/*
 * 2.explode()函数把字符串打散为数组
 * 第一个参数:是定界符,在哪里分割字符串
 * 第二个参数:要分割的字符串
 * 第三个参数:可选。规定所返回的数组元素的数目
 */
print_r(explode(',',$str));
print_r(explode(',',$str,3));
echo '<hr color="red">';
//3.implode()函数返回由数组元素组合成的字符串
echo implode('***',explode(',',$str,3));
echo '<hr color="red">';
//字符串的查找与替换
/*
 * 1.strpos(string,find,start)函数查找字符串在另一字符串中第一次出现的位置。
 * string:	必需。规定要搜索的字符串。
 * find:必需。规定要查找的字符串。
 * start:可选。规定在何处开始搜索。
 */
$str1='php.cn';
echo strpos($str1,'c');//output:4
echo '<hr color="red">';
/*
2.返回子串前面的部分
strstr(string,search,before_search)函数搜索字符串在另一字符串中的第一次出现
1.string:必需。规定被搜索的字符串
2.search:必需。规定所搜索的字符串。如果此参数是数字,则搜索匹配此数字对应的 ASCII 值的字符。
3.before_search:可选。默认值为 "false" 的布尔值。如果设置为 "true",它将返回 search 参数第一次出现之前的字符串部分
*/
echo strstr($str1,'n',true);//output:php.c 返回子串之前的部分
echo '<hr color="red">';
/*
 * substr_replace(string,replacement,start,length)函数把字符串的一部分替换为另一个字符串
 * string:必需。规定要检查的字符串
 * replacement:	必需。规定要插入的字符串
 * start:必需。规定在字符串的何处开始替换。正数 - 在字符串中的指定位置开始替换.负数 - 在从字符串结尾的指定位置开始替换
                0 - 在字符串中的第一个字符处开始替换
 * length:可选。规定要替换多少个字符。默认是与字符串长度相同
 *          正数 - 被替换的字符串长度
            负数 - 表示待替换的子字符串结尾处距离 string 末端的字符个数。
             0 - 插入而非替换
 */
echo substr_replace($str1,'www.',2,3);//output:phwww.n

运行实例 »

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

数组的排序:

实例

<?php
header("content-type:text/html;charset=utf8");
echo '<h2>数组的排序</h2>';
$arr=['id'=>1,'name'=>'lucy','sex'=>'女','country'=>'china','hobby'=>'shopping'];
echo '<pre>';
print_r($arr);//原数组
echo '<hr color="red">';
/*
 * sort(array,sortingtype) 函数对索引数组进行升序排序
 *注释:本函数为数组中的单元赋予新的键名。原有的键名将被删除。如果成功则返回 TRUE,否则返回 FALSE。
 * array:必需。规定要进行排序的数组。
 * sortingtype:可选。规定如何比较数组的元素/项目
 *   0 = SORT_REGULAR - 默认。把每一项按常规顺序排列(Standard ASCII,不改变类型)
 *   1 = SORT_NUMERIC - 把每一项作为数字来处理。
 *   2 = SORT_STRING - 把每一项作为字符串来处理。
 *   3 = SORT_LOCALE_STRING - 把每一项作为字符串来处理,基于当前区域设置(可通过 setlocale() 进行更改)。
 *   4 = SORT_NATURAL - 把每一项作为字符串来处理,使用类似 natsort() 的自然排序
 *   5 = SORT_FLAG_CASE - 可以结合(按位或)SORT_STRING 或 SORT_NATURAL 对字符串进行排序,不区分大小写。
 */
sort($arr,SORT_REGULAR);//常规排序
print_r($arr);
echo '<hr color="red">';
sort($arr,SORT_NUMERIC);//把每一项作为数字来处理
print_r($arr);
sort($arr,SORT_STRING);//把每一项作为字符串来处理
print_r($arr);
echo '<hr color="red">';
//保留键名
$arr=['id'=>1,'name'=>'lucy','sex'=>'女','country'=>'china','hobby'=>'shopping'];
asort($arr);
print_r($arr);
//对键名排序
$arr=['id'=>1,6=>'666','name'=>'lucy','sex'=>'女','country'=>'china','hobby'=>'shopping',8=>'ok'];
ksort($arr);
print_r($arr);
/*反转排序 rsort() 函数对数组的元素按照键值进行逆向排序。与 arsort() 的功能基本相同。
 * rsort($arr,SORT_NUMERIC);函数对数值数组进行降序排序
 * arr:必需。规定要进行排序的数组
 *sortingtype:可选。规定如何比较数组的元素/项目
 *   0 = SORT_REGULAR - 默认。把每一项按常规顺序排列(Standard ASCII,不改变类型)
 *   1 = SORT_NUMERIC - 把每一项作为数字来处理。
 *   2 = SORT_STRING - 把每一项作为字符串来处理。
 *   3 = SORT_LOCALE_STRING - 把每一项作为字符串来处理,基于当前区域设置(可通过 setlocale() 进行更改)。
 *   4 = SORT_NATURAL - 把每一项作为字符串来处理,使用类似 natsort() 的自然排序
 *   5 = SORT_FLAG_CASE - 可以结合(按位或)SORT_STRING 或 SORT_NATURAL 对字符串进行排序,不区分大小写。
 */
//反转排序
rsort($arr,SORT_STRING);
print_r($arr);
echo '<hr color="red">';
//自定义排序
$str2=[4,9,12,36,88,15,46,66];
print_r($str2);
usort($str2,function ($a,$b){
    $res=$a-$b;
    if($res ==0){
        return 0;
    }else if($res >0){
        return true;
    }else{
        return false;
    }
});
print_r($str2);

运行实例 »

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

效果图:

数组的排序.png

字符串与数组的转换.png

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