浅谈php字符串反转 面试中经常遇到

yipeiwu_com6年前PHP代码库

1.单字节字符串反转

php提供了用于字符串反转的函数strrev()

$str = 'abcdef';
echo strrev($str);

2.对于包含中文的多字节字符串需要用到mb_substr()

$str = '字符串反转';
function rev($str, $encoding = 'utf-8'){
 $len = mb_strlen($str);
 $result = '';
 for ($i = $len-1; $i>=0; $i--){
  $result.= mb_substr($str,$i,1,$encoding);
 }
 return $result;
}
echo rev($str);

3.算法实现 首位交换

$str = 'abcdefg';
$len = strlen($str);
$times = $len/2;
for($i = 0;$i <= $times; $i++ ){
 $tmp = $str[$i];
 $str[$i] = $str[$len-$i-1];
 $str[$len-$i-1] = $tmp;
}
echo $str;

以上这篇浅谈php字符串反转 面试中经常遇到就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【宜配屋www.yipeiwu.com】。

相关文章

php函数连续调用实例分析

本文实例讲述了php函数连续调用的方法。分享给大家供大家参考。具体如下: <?php //返回$this,实现连续调用 class xin { function...

php 数组的指针操作实现代码

/** * 将数组的内部指针倒回一位 * @param array &$arr * @return mixed 返回前一个单元的值,当没有更多单元时返回 FALSE * 如果数组包含空的...

WordPress主题制作之模板文件的引入方法

get_template_part() 用来引用模板文件,类似于 get_header()、get_sidebar() 和 get_footer(),只不过这个 get_template...

PHP7实现和CryptoJS的AES加密方式互通示例【AES-128-ECB加密】

本文实例讲述了PHP7实现和CryptoJS的AES加密方式互通。分享给大家供大家参考,具体如下: PHP类: class AES { /** * * @param...

Windows平台PHP+IECapt实现网页批量截图并创建缩略图功能详解

Windows平台PHP+IECapt实现网页批量截图并创建缩略图功能详解

本文实例讲述了Windows平台PHP+IECapt实现网页批量截图并创建缩略图功能。分享给大家供大家参考,具体如下: 最近在开发一个本地互联网应用的项目,为了增加用户体验,需要在搜索结...