博主信息
博文 28
粉丝 0
评论 0
访问量 21155
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
2018-08-27数组排序+常用字符串函数
阿小的博客
原创
660人浏览过

实例

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>字符串函数</title>
<style type="text/css">
span{
	font-weight:bold;
}
</style>
</head>
<body>
<pre>
<h3>数组排序</h3>
<?php 
//数组排序
echo '<span>根据数组的值进行排序,sort()升序,rsort()降序,usort()用户自定义排序(多用于二维数组的排序)</span><br>';
$arr1 = array(14,1,45,67,97,34,75,23);
echo var_export($arr1),'<br>';
sort($arr1);
echo '用sort()升序后:',var_export($arr1),'<br>';

$arr1 = array(14,1,45,67,97,34,75,23);
sort($arr1);
echo '用rsort()降序后:',var_export($arr1),'<br>';

$arr2 = array(
	array('name'=>'张三','course'=>'语文','grade'=>85),
	array('name'=>'李四','course'=>'语文','grade'=>72),
	array('name'=>'王五','course'=>'语文','grade'=>90),
	array('name'=>'赵六','course'=>'语文','grade'=>66),
	array('name'=>'Peter','course'=>'语文','grade'=>59),
	array('name'=>'Tom','course'=>'语文','grade'=>90)
);
usort($arr2,function($grade1,$grade2){
	$res=$grade1['grade']-$grade2['grade'];
	switch($res){
		case ($res<0):
			//echo $grade1['grade'],'-',$grade2['grade'],'=',-1,'<br>';
			return -1;
			break;
		case ($res>0):
			//echo $grade1['grade'],'-',$grade2['grade'],'=',1,'<br>';
			return 1;
			break;
		case ($res=0):
			//echo $grade1['grade'],'-',$grade2['grade'],'=',0,'<br>';
			return 0;
			break;
	}
});
echo '用usort()排后:',var_export($arr2),'<br>';

//根据数组的键进行排序
echo '<span>根据数组的键进行排序,ksort()升序,krsort()降序,uksort()用户自定义排序</span><br>';
$arr3=array('html'=>'文本标记语言','php'=>'服务器语言','css'=>'样式表','javascript'=>'脚本语言');
ksort($arr3);
echo '用ksort()排后:',var_export($arr3),'<br>';

$arr3=array('html'=>'文本标记语言','php'=>'服务器语言','css'=>'样式表','javascript'=>'脚本语言');
krsort($arr3);
echo '用krsort()排后:',var_export($arr3),'<br>';

$arr3=array('html'=>'文本标记语言','php'=>'服务器语言','css'=>'样式表','javascript'=>'脚本语言');
uksort($arr3,function($var1,$var2){
	$v1=substr($var1,1,1);
	$v2=substr($var2,1,1);
	$res=strcmp($v1,$v2);
	switch($res){
		case ($res<0):
			return -1;
			break;
		case ($res>0):
			return 1;
			break;
		case ($res=0):
			return 0;
			break;
	}
	
});
echo '用uksort()排后:',var_export($arr3),'<br>';
?>
<hr>
<h3>substr(),strstr(),strpos()函数的使用</h3>
<?php 

$str1='I want to be a good programmer!';
echo '原字符串:',$str1,'<br>';;

echo '<span>substr($str,$start [,$length])截取字符串,从开始位置截取length长度的字符串</span><br>';
//正数从0开始,倒数从-1开始
echo substr($str1,0),'<br>';	//返回所有字符串
echo substr($str1,7),'<br>';	//从第7位返回所有
echo substr($str1,-11),'<br>';	//返回倒数第11位及后面所有
echo substr($str1,15,4),'<br>';	//从第15位取4个字符
echo substr($str1,15,-4),'<br>';//从第15位取到倒数第4位

echo '<span>substr($str,$need)查找字符串的首次出现,返回第一次出现的及后面所有的字符串,区分大小写</span><br>';
echo strstr($str1,'t'),'<br>';	//返回第一次出现的及后面所有的字符串

echo '<span>subpos($str,$need)查找字符串首次出现的位置</span><br>';
echo 't第一次出现的位置是:',strpos($str1,'t'),'<br>';	
?>
<hr>
<h3>str_replace,substr_replace()函数的使用</h3>
<?php 
$str2='I want to be a good programmer!';
echo '原字符串:',$str2,'<br>';;

echo '<span>str_replace($var1,$var2,$var)在$var中将$var1,替换为$var2</span><br>';
echo str_replace('programmer','PHPer',$str2),'<br>';
echo str_replace(array('programmer','good'),'PHPer',$str2),'<br>';
echo str_replace(array('programmer','good'),array('PHPer','better'),$str2),'<br>';	//也可多个替换

echo '<span>substr_replace($var,$var1,$int,[$len])在$var中从$int开始替换为$var1</span><br>';
echo substr_replace($str2,'PHPer',15),'<br>';
echo substr_replace($str2,'better',15,4),'<br>';	//从15位开始替换4个字符
?>
</pre>
</body>
</html>

运行实例 »

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


批改状态:合格

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系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+教程免费学