91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP怎么用array_push實現代碼優化

發布時間:2020-07-11 15:38:57 來源:億速云 閱讀:156 作者:Leah 欄目:編程語言

今天就跟大家聊聊有關PHP怎么用array_push實現代碼優化,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

                                                           PHP中數組插入數據通常有這么幾種:

  1. 定義的時候直接賦值
$arr = array(‘apple’, ’banana’);
  1. 使用數組變量操作
$arr = array();
$arr[] = ‘apple’;
$arr[] = ‘banana’;
  1. 使用array_push()插入
$arr = array(‘apple’);
array_push($arr, ‘banana’, ‘orange’);

在項目中,我們大部分情況都是先從數據庫中獲取數據,然后轉成數組形式,而對于第一種情況,在定義數組的時候直接賦值往往只適合數據量很小,而且是已知的情況,所以就不存在什么代碼優化了,我們主要講第二種和第三種。

性能比較

我們使用php 7.2來測試,并且沒有做任何配置上的優化。測試方法:定義一個數組,分別用第二種和第三種方式插入10萬條記錄,代碼大致如下:

PHP怎么用array_push實現代碼優化

PHP怎么用array_push實現代碼優化

convert函數用來查看內存占用情況,運行結果如下:

PHP怎么用array_push實現代碼優化

PHP怎么用array_push實現代碼優化

通過多次運行上述代碼,可以發現直接使用數組變量賦值耗時在0.0045左右,而使用array_push的方式耗時在0.006左右,消耗的內存都是一樣的,因為都是10萬條記錄。

對比兩種方法,發現方法二確實比調用array_push快,因為在每次循環時函數調用需要消耗一些時間,但僅僅看上面的測試,并不覺得第二種方法比第三種方法快多少,完全可以忽略不計的。

的確,這種優化在絕大多數應用中和沒優化沒啥區別,但是當應用達到瓶頸的時候,每一處不起眼的優化可能都會使性能提高不少,況且我們的測試中數組的結構很簡單,真實項目中數據類型不是這么單一,可能還是嵌套的數組,數組的大小可能也不止10萬。

我們再來看看兩者的差異,array_push()是函數調用,另一個不是,這就是說了,從代碼量上看兩者也是一樣的,從數組結構上看,測試中我們都沒有使用索引,默認都是從0開始,如果要使用key => value形式插入數據時,array_push()就不是很好處理了,這時使用法二就很方便:$array1[$key] => $x

前面都是說array_push()怎么不好,但有時候array_push還是很好用的。比如我們要一次插入多個元素時,就可以這樣使用:

$arr = array(‘a’, ’b’);
array_push($arr, ‘c’, ‘d’);
// $arr = array(‘a’, ’b’, ‘c’, ‘d’);

通過上面對比可見,PHP中數組插值的方法有很多,雖然每種方法差不多,但了解每一種方法何時使用還是很有必要的。

看完上述內容,你們對PHP怎么用array_push實現代碼優化有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

濉溪县| 自贡市| 上林县| 渭源县| 疏附县| 怀来县| 大荔县| 桂林市| 牡丹江市| 河西区| 梅州市| 江永县| 长治市| 泸州市| 凉城县| 枣阳市| 定边县| 东海县| 定安县| 鸡泽县| 宁陵县| 韶山市| 广安市| 榕江县| 府谷县| 惠来县| 富源县| 正安县| 长岛县| 宝山区| 本溪市| 秀山| 松潘县| 武城县| 佳木斯市| 二连浩特市| 武功县| 宝应县| 区。| 吉安县| 边坝县|