关于php几种字符串连接的效率比较(详解)


Posted in PHP onFebruary 22, 2017

php大致有三种字符串连接:

1、直接用.来进行连接。

2、用.=进行连接。

3、先压入数组,再通过join函数连接。

下面分别对这三种方法的效率进行测试:

第一种方法代码如下:

<?php   
   function get_tm() {
   list ( $usec, $sec ) = explode ( " ", microtime () );
   return (( float ) $usec + ( float ) $sec);
   }
   
   $temp="test";
   $result="";
   define("num",100000);
   $start=get_tm();
  
   for($i=0;$i<num;$i++)
   {
     $result=$result.$temp;
   }
   echo get_tm()-$start;
   
?>

运行4次,除去第一次运行时间,三次时间分别为:

22.165272951126
22.003527164459
22.15947508812

第二种方法代码如下:

<?php     
   function get_tm() {
   list ( $usec, $sec ) = explode ( " ", microtime () );
   return (( float ) $usec + ( float ) $sec);
   }
   
   $temp="test";
   $result="";
   define("num",100000);
   $start=get_tm();
  
   for($i=0;$i<num;$i++)
   {
     $result.=$temp;
   }
   echo get_tm()-$start;
   
?>

运行4次,除去第一次运行时间,三次时间分别为:

3.1967310905457
3.1296961307526
3.0872850418091

第三种方法代码如下:

<?php      
   function get_tm() {
   list ( $usec, $sec ) = explode ( " ", microtime () );
   return (( float ) $usec + ( float ) $sec);
   }
   
   $temp="test";
   $result="";
   $arr=array();
   define("num",100000);
   $start=get_tm();
  
   for($i=0;$i<num;$i++)
   {
     array_push($arr, $temp);
   }
   $result=join($arr);
   echo get_tm()-$start;
   
?>

运行4次,除去第一次运行时间,三次时间分别为:

3.3184430599213
3.2759411334991
3.2663381099701

由上可见,直接通过.进行字符串的连接效率最为低下。

以上这篇关于php几种字符串连接的效率比较(详解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
Ajax+PHP 边学边练之四 表单
Nov 27 PHP
thinkphp实现面包屑导航(当前位置)例子分享
May 10 PHP
使用PHP和HTML5 FormData实现无刷新文件上传教程
Sep 06 PHP
微信公众平台开发关注及取消关注事件的方法
Dec 23 PHP
php实现将wav文件转换成图像文件并在页面中显示的方法
Apr 21 PHP
php算法实例分享
Jul 14 PHP
3种php生成唯一id的方法
Nov 23 PHP
深入浅析php中sprintf与printf函数的用法及区别
Jan 08 PHP
PHP设计模式之简单投诉页面实例
Feb 24 PHP
PHP错误处理函数register_shutdown_function使用示例
Jul 03 PHP
PHP mongodb操作类定义与用法示例【适合mongodb2.x和mongodb3.x】
Jun 16 PHP
PHP levenshtein()函数用法讲解
Mar 08 PHP
php可变长参数处理函数详解
Feb 22 #PHP
php操作access数据库的方法详解
Feb 22 #PHP
Smarty3配置及入门语法
Feb 22 #PHP
PHP中ajax无刷新上传图片与图片下载功能
Feb 21 #PHP
PHP+JavaScript实现无刷新上传图片
Feb 21 #PHP
PHP编辑器PhpStrom运行缓慢问题
Feb 21 #PHP
如何离线执行php任务
Feb 21 #PHP
You might like
PHP网页游戏学习之Xnova(ogame)源码解读(十六)
2014/06/30 PHP
php+ajax 文件上传代码实例
2019/03/18 PHP
理解Javascript_08_函数对象
2010/10/15 Javascript
使用jQuery插件创建常规模态窗口登陆效果
2013/08/23 Javascript
JS 毫秒转时间示例代码
2013/09/22 Javascript
js获取select标签选中值的两种方式
2014/01/09 Javascript
js中定义一个变量并判断其是否为空的方法
2014/05/13 Javascript
jquery实现勾选复选框触发事件给input赋值
2015/02/01 Javascript
JavaScript动态改变表格单元格内容的方法
2015/03/30 Javascript
jquery京东商城双11焦点图多图广告特效代码分享
2015/09/06 Javascript
jquery实现定时自动轮播特效
2015/12/10 Javascript
JavaScript过滤字符串中的中文与空格方法汇总
2016/03/07 Javascript
jquery表单提交带错误信息提示效果
2017/03/09 Javascript
微信小程序 选项卡的简单实例
2017/05/24 Javascript
如何编写一个完整的Angular4 FormText 组件
2017/11/18 Javascript
详解Vue中使用Echarts的两种方式
2018/07/03 Javascript
ES6 fetch函数与后台交互实现
2018/11/14 Javascript
Bootstrap Paginator+PageHelper实现分页效果
2018/12/29 Javascript
Angular中innerHTML标签的样式不起作用的原因解析
2019/06/18 Javascript
layui 阻止图片上传的实例(before方法)
2019/09/26 Javascript
使用p5.js临摹动态图片
2019/11/04 Javascript
vue-cli4.x创建企业级项目的方法步骤
2020/06/18 Javascript
[23:21]Ti4 冒泡赛第二轮DK vs C9 2
2014/07/14 DOTA
Python 模拟登陆的两种实现方法
2017/08/10 Python
Tensorflow之Saver的用法详解
2018/04/23 Python
基于随机梯度下降的矩阵分解推荐算法(python)
2018/08/31 Python
python如果快速判断数字奇数偶数
2019/11/13 Python
python argparse模块通过后台传递参数实例
2020/04/20 Python
英国最大的宠物商店:Pets at Home
2019/04/17 全球购物
Java多态性的定义以及类型
2014/09/16 面试题
一些Solaris面试题
2013/03/22 面试题
英语故事演讲稿
2014/04/29 职场文书
岗位说明书范文
2014/05/07 职场文书
2016关于预防职务犯罪的心得体会
2016/01/21 职场文书
《索溪峪的野》教学反思
2016/02/19 职场文书
详解Go语言运用广度优先搜索走迷宫
2021/06/23 Python