博客列表 >php数组排序总结与字符串常用操作-4月18日作业

php数组排序总结与字符串常用操作-4月18日作业

日薪月e的博客
日薪月e的博客原创
2018年04月22日 18:36:58821浏览

本次作业内容是php数组排序总结与常用的字符串常用操作:(字符串长度计算、 字符串与数组之间的转换、字符串的查找与替换 ),现分享代码如下:

1、php数组排序

实例

实例

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>数组排序总结-4月18日作业</title>
</head>
<body>
<!-- 
	1. 数组排序方法总结
	2. 字符串长度计算
	3. 字符串与数组之间的转换
	4. 字符串的查找与替换 
-->
<?php
echo '<h3>1.数组排序方法总结</h3><hr color="green">';
$arr = ['id'=>1001,'name'=>'zhu','course'=>'php','grade'=>60,5=>true];
//格式化输出
echo '<pre>';
echo '<p>原始数组:</p>';
print_r($arr);
echo '<hr color="red"';

/*
一、正序:sort(),asort(),ksort()
二、反序、反转排序:rsort(),arsort(),krsort()
reversal:反转; associate()
*/

//1.sort(&$arr,flag) 变量的引用传值,原有数组被改写:正序且键名重置
//默认按类型分组,每组再自然排序。
// echo '<h3>1.1.sort(&$arr,flag) 变量的引用传值,原有数组被改写:正序且键名重置</h3><hr color="red">';
//sort($arr);

// sort($arr,SORT_NUMERIC);

//sort($arr,SORT_STRING); //ASCII码排列

//print_r($arr);

//2.asort(&$arr,flag) :正序且键名保留
// asort($arr); //忽略类型
// asort($arr,SORT_NUMERIC);
// asort($arr,SORT_STRING);
// echo '<pre>';
// print_r($arr);

//3.ksort(&$arr,flag) :按键名排序
// ksort($arr); //忽略类型
// ksort($arr,SORT_NUMERIC);
// ksort($arr,SORT_STRING);
// echo '<pre>';
// print_r($arr);

//4.rsort(&$arr,flag) :倒序排序且键名忽略
// rsort($arr); //忽略类型
// rsort($arr,SORT_NUMERIC);
// rsort($arr,SORT_STRING);
// echo '<pre>';
// print_r($arr);

//5.arsort(&$arr,flag) :倒序且键名保留
// arsort($arr); //忽略类型
// arsort($arr,SORT_NUMERIC);
// arsort($arr,SORT_STRING);
// echo '<pre>';
// print_r($arr);

//6.krsort(&$arr,flag) :键名倒序排序
// krsort($arr); //忽略类型
// krsort($arr,SORT_NUMERIC);
// krsort($arr,SORT_STRING);
// echo '<pre>';
// print_r($arr);

//7.usort() 自定义排序
$arr1 = [10,4,22,99,35,18];
echo '<pre>';
print_r($arr1);
usort($arr1,function($a,$b){
	$res = $a-$b;
	if ($res == 0) {
		return 0;
	} else if($res > 0){
		return true;
	} else {
		return false;
	}
});
echo '<p>排序后:</p>';
print_r($arr1);
?>
</body>
</html>

运行实例 »

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



运行实例 »

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

2、字符串常用操作

实例

<meta charset="utf-8">
<?php
echo '<h3>字符串操作-4月18日作业</h3><hr color="red">';
/*一、获取字符串长度:
strlen($str)
mb_strlen($str,$encoding)
*/
$siteName = 'php中文网';
//获取系统的字符编码集:
$encoding = mb_internal_encoding();
$encoding = 'utf-8';
echo '内部的字符编码集:',$encoding,'<br>';

//1.strlen($str)获取字节表示的字符串长度
//utf-8字符集中,一个中文是3个字符。
//echo strlen($siteName),'<br>';

//2.mb_strlen($str[,$encoding]):获取字符数表示的长度
//echo mb_strlen($siteName),'<br>';
echo mb_strlen($siteName,$encoding),'<br>';
echo mb_strlen($siteName,'UTF-8'),'<br>';
echo '<hr>';
/*二、字符串与数组的转换:
1. str_split($str,$length)
2.explode($delimiter,$str,$num)
3.implode($glue,$str)
*/

echo '<pre>';
$str = 'html,css,jquery,php,mysql,thinkphp';
echo strlen($str);
echo '<p>原始字符串:'.$str.'</p>';
//1. str_split($str,$length):默认按字符数分割字符串
print_r(str_split($str));
//每5个字符进行分割
print_r(str_split($str,5));
echo count(str_split($str));
echo '<hr>';

//2.explode($delimiter,$str,$num):按指定的分隔符进行分割字符串。
print_r(explode(',',$str));
print_r(explode(',',$str,3));

echo '<hr color="red">';

//3.implode($glue,$str):按分隔符,将一维数组拼接成字符串。
$arr2 = explode(',',$str);
print_r($arr2);
echo '<hr>';
echo implode(',',$arr2),'<br>';
echo implode('***',$arr2),'<br>';
echo implode(' ',$arr2),'<br>';

/*
三、字符串的查找与替换
1、strpos($str1,$str2):查找$str2在$str1中首次出现的位置。
2、strstr($str1,$str2):如果$str2是$str1的子串,返回子串,否则返回false
3、str_replace():子串替换
4、substr_replace();替换字符串的子串
*/

$str = 'www.php.cn';
//1.strpos($str1,$str2):查找str2在$str1中首次出现的位置
echo '<hr color="red"';
echo strpos($str,'p'),'<br>';
echo strpos($str,'p',5),'<br>';//指定位置查找

//2.strstr($str1,$str2):如果str2是str1的子串,返回子串,否则返回false
echo strstr($str,'php'),'<br>'; //返回子串以其后面的内容
echo strstr($str,'php',true),'<br>'; //返回子串前面的内容
echo strstr($str,'php',true),strstr($str,'php');

echo '<hr>';

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

echo '<hr>';

//4.substr_replace($str,$str1,$start,$length):替换字符串的子串
echo substr_replace($str,'pppph',5, 2);

运行实例 »

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


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议