本文主要和大家分享php变量引用与非引用性能比较,希望能帮助到大家。
$val){
$p[$key] += 1;
}
}
$end = microtime(true);
$endMem = Memory_get_usage();
echo 'ByKey: ', $end - $start, 's' , PHP_EOL, 'Mem: ', $endMem - $startMem , PHP_EOL;
$start = microtime(true);
$startMem = Memory_get_usage();
for($i = 0; $i < $cycleCount; $i += 1){
$p = array_fill(0, $arrayCount, 1);
foreach($p as &$val){
$val += 1;
}
}
$end = microtime(true);
$endMem = Memory_get_usage();
echo 'ByRef: ', $end - $start, 's' , PHP_EOL, 'Mem: ', $endMem - $startMem , PHP_EOL , PHP_EOL;
// END: 引用胜出
// 数组内循环赋值不修改数据
echo "数组内循环赋值不修改数据", PHP_EOL;
$start = microtime(true);
$startMem = Memory_get_usage();
for($i = 0; $i < $cycleCount; $i += 1){
$p = array_fill(0, $arrayCount, 1);
foreach($p as $key => $val){
$b = $val;
}
}
$end = microtime(true);
$endMem = Memory_get_usage();
echo 'ByKey: ', $end - $start, 's' , PHP_EOL, 'Mem: ', $endMem - $startMem , PHP_EOL;
$start = microtime(true);
$startMem = Memory_get_usage();
for($i = 0; $i < $cycleCount; $i += 1){
$p = array_fill(0, $arrayCount, 1);
foreach($p as &$val){
$b = $val;
}
}
$end = microtime(true);
$endMem = Memory_get_usage();
echo 'ByRef: ', $end - $start, 's' , PHP_EOL, 'Mem: ', $endMem - $startMem , PHP_EOL;
// END: 传值胜出
// 总结:数据需要修改的就用引用,数据不需要修改的就用非引用相关推荐:
Magento是一套专业开源的PHP电子商务系统。Magento设计得非常灵活,具有模块化架构体系和丰富的功能。易于与第三方应用系统无缝集成。Magento开源网店系统的特点主要分以下几大类,网站管理促销和工具国际化支持SEO搜索引擎优化结账方式运输快递支付方式客户服务用户帐户目录管理目录浏览产品展示分析和报表Magento 1.6 主要包含以下新特性:•持久性购物 - 为不同的
立即学习“PHP免费学习笔记(深入)”;










