Blogger Information
Blog 15
fans 0
comment 1
visits 10924
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
数组排序与字符串函数---4.19.0:50
吴明的博客
Original
797 people have browsed it

总结:这节课程主要学习的是一些常见函数的用法

在函数记忆的同时需要注意参数和函数的前后排列顺序:大致是(主体,参照函数),特殊的记住。


<?php

header("Content-Type: text/html; charset=utf-8");


// 1. 数组排序方法总结

// 2. 字符串长度计算

// 3. 字符串与数组之间的转换

// 4. 字符串的查找与替换

echo '<h3>array</h3>';

//数组排序

/*

正序:

1.sort(&$arr,$flag)按值升值排列,键名重置

2.asort(&$arr,$flag)按值升值排列,键名保留

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

反序:

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

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

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

自定义回调函数进行排序:

usort(&$arr,function($a,$b){#code})

*/

$arr = ['id'=>5,'name'=>'wuming','course'=>'php','grade'=>60];

 asort($arr);

//var_dump($arr);

$arr1 = [10, 4, 22, 99, 35, 18];

usort($arr1, function($a, $b) {

$res = $a - $b; 

if ($res == 0) {

return 0;

} else if ($res > 0) {

return true;

} else {

return false;

}

});

print_r($arr1);

echo'<hr/>';

echo '<p>string length</p>';

//1.strlen($str)

//2.mb_strlen($arr,$encoding)

$siteName = 'php中文网';

$encoding = mb_internal_encoding();

echo '内部字符编码集: ',$encoding,'<br>';


echo '<p>字符串函数(二):比较运算</p><hr color="green">';

/**

 * 1.strcmp($str1, $str2):二进制安全字符串比较

 * 2.strncmp($str1, $str2, $length):比较开头指定长度的是否相待

 * 3.strcasecmp($str1, $str2):二进制安全字符串比较,不区分大小写

 * 4.strncasecmp($str1, $str2):二进制安全字符串比较,不区分大小写

 * 5.strspn($str,$mark,$start,$length):获取匹配遮罩的起始子字符串的长度

 * 6.strcspn($str,$mark,$start,$length):获取不匹配遮罩的起始子字符串的长度

 */

$str1 = 'php中文网';

$str2 = 'PHP中文网';

//1.strcmp($str1, $str2):字符串比较,相等返回0,大于返回>0,否则返回<0

echo strcmp($str1, $str2) == 0 ? '相等' : '不相等', '<br>'; 

echo '<p>字符串函数(三):字符串与数组之间的转换</p><hr color="green">';

/**

 * 1.str_split($str,$length=1),按字符数量,将字符串分割为数组,默认为1

 * 2.explode($delimiter,$str,$num):按分隔符,将字符串分割为数组,可指定数组元素数量

 * 3.implode($glue, $str):按分隔符,将一维数组拼装成字符串,默认用空格分隔

 */

$str = 'html,css,jquery,php,mysql,thinkphp';

print_r(str_split($str,5));

print_r(explode(',',$str));


echo '<p>字符串函数(四):html与字符串之间的转换</p><hr color="green">';

 /*

 addslashes($str):为了数据库查询语句在某些字符前加上反斜线转义

 stripslashes($str):功能与addslashes()相反,去掉字符串中的转义反斜线字符

 htmlspecialchars($str,FLAG):将特殊字符转换为 HTML 实体

  &->&amp;"=>&quot;'->&apos/&#039; < &lt; > &gt;

  strip_tags($str,$allow)从字符串中去除HTML和PHP标记

  */

$str = <<< 'NOWDOC'

<h4>PHP课程介绍</h4>

<ol>

<li>'PHP'基本语法&案例</li>

<li>"PHP"的数据库操作</li>

<li>\PHP面向对象编程</li>

</ol>

NOWDOC;

echo $str;


//strip_tags($str,$allow)从字符串中去除HTML和PHP标记

//$str5 = strip_tags($str); //输出的是去掉所有标签的纯文本

// $str = strip_tags($str,'<h4>'); //保留<h4>标签,其它的删除

// echo $str;  

echo '<p>字符串函数(五):删除或填充指定内容</p><hr color="green">'; 

/**

 * 1.ltrim($str,$mask):从左边删除空格或指定字符

 * 2.rtrim($str,$mask):从右边删除空格或指定字符

 * 3.trim($str,$mask):从左右边删除空格或指定字符

 * 4.str_pad($str,$length,$mark,CONST):使用特定字符将字符串填充到指定长度

 * 可使用三个常量指定方向: STR_PAD_LEFT/STR_PAD_RIGHT/STR_PAD_BOTH,默认用空格

 * 5.chunk_split($str, $length,[$end]):将字符串按大小切成小块,可指定分割符

 */

//4.str_pad($str,$length,$mark,CONST):使用特定字符将字符串填充到指定长度

$str1 = 'www.php.cn';

echo strlen($str1),'<br>';

echo str_pad($str1, 20, '*', STR_PAD_RIGHT),'<br>'; //默认向右填充


echo '<p>字符串函数(六):查找与替换</p><hr color="green">';


/**

 * 1.strpos($str1,$str2, $offset)查找$str2在$str1中首次出现的位置

 * 2.strstr($str1, $str2),如果$str2是$str1的子串,返回子串,返回否则false

 * 如果确定$str2是$str1的子串,推荐使用strpos(),速度更快

 * 3.str_replace($str1, $str2, $str3, $num):子串替换,$num是替换次数

 * 4.substr_replace($str1,$str2,$str3,$start, $length):替换字符串的子串

 */

$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>';


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