php 字符串 比较 性能,PHP字符串处理,性能优化

对于大字符串数据流处理的函数性能差异

$h = fopen("./abc","r");

while($a = fgets($h))

{

}

fclose($h);

的性能是

$h = fopen("./abc","r");

while(!feof($h))

{

$a = fgets($h);

}

fclose($h);

的2倍

如果对大文件进行读行处理,一定要用fgets不能用file_get_contents+explode内存会多消耗50%,性能差别1倍

如果对每一行的数据进行分析处理,性能如下:

1. 采样分析法,性能最高

2. STRPOS性能一般

3. PREG_MATCH正则,性能非常差

以下函数看似不消耗多少,实际上非常消耗CPU:

1. trim

2. if特别多条件

对于特别大的字符串,如果使用完成了为了节省内存,可以强制内存回收:

unset($abc)

采样分析法是目前PHP字符串分析中性能最高的方法

php内部支持数据类型char *

$a = "starts 12333 of\n";

if ($a[0] == 's' && $a[5] == 's') {

}

判断字符串是否为空的高性能方法

$a = "starts 12333 of\n";

if (!isset($a[0]) {

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值