国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

PHP中數組賦值性能及過程

Yumenokanata / 3549人閱讀

摘要:今天導出報表時,測試同事告訴我數據太大了,無法導出。我看了下大概只有條左右的數據,完全不大。估計是上午將數據寫入數組時方式不對。修改了下果然了。

今天導出報表時,測試同事告訴我數據太大了,無法導出。我看了下大概只有1500條左右的數據,完全不大。估計是上午將數據寫入數組時方式不對。修改了下果然ok了。
參考vld用法:http://www.phppan.com/2011/05...
mac下安裝vld擴展:http://blog.csdn.net/njys1/ar...
(第一次記錄文章,還不熟悉排版)

下面是簡單的還原
1.性能底下的寫法:


使用vld查看opcode的代碼:

function name:  (null)
number of ops:  8
compiled vars:  !0 = $array
line     #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   2     0  E >   ASSIGN                                                   !0, null
   3     1        ASSIGN_DIM                                               !0
         2        OP_DATA                                                  "1", $2
   4     3        ASSIGN_DIM                                               !0
         4        OP_DATA                                                  "a", $4
   5     5        ASSIGN_DIM                                               !0
         6        OP_DATA                                                  "3", $6
   6     7      > RETURN                                                   1

branch: #  0; line:     2-    6; sop:     0; eop:     7; out1:  -2
path #1: 0, 

顯然這種方式每賦值一次需要兩步操作

2.優先的寫法:


對應的opcode代碼:

function name:  (null)
number of ops:  6
compiled vars:  !0 = $array
line     #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   2     0  E >   ASSIGN                                                   !0, null
   3     1        INIT_ARRAY                                       ~1      "1"
         2        ADD_ARRAY_ELEMENT                                ~1      "a"
         3        ADD_ARRAY_ELEMENT                                ~1      "3"
         4        ASSIGN                                                   !0, ~1
   4     5      > RETURN                                                   1

branch: #  0; line:     2-    4; sop:     0; eop:     5; out1:  -2
path #1: 0,

這種方式每賦值一次需要一步操作,數據量大了區別就很明顯

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/22333.html

相關文章

  • php性能怎么優化?php性能優化安全策略

    摘要:性能問題一般不會超過占整個項目性能的,一般在。內置函數的性能優劣。幾乎與在函數中調用局部變量的速度相當。遞增一個全局變量要比遞增一個局部變量慢倍。類似的方法調用所花費的時間接近于次的局部變量遞增操作。 php性能怎么優化?性能是網站運行是否良好的關鍵因素, 網站的性能與效率影響著公司的運營成本及長遠發展,編寫出高質高效的代碼是我們每個開發人員必備的素質,也是我們良好...

    番茄西紅柿 評論0 收藏2637
  • task0002(一)- JavaScript數據類型語言基礎

    摘要:不過讓流行起來的原因應該是是目前所有主流瀏覽器上唯一支持的腳本語言。經過測試,數字字符串布爾日期可以直接賦值,修改不會產生影響。再考慮對象類型為或者的情況。對于結果聲明其類型。判斷對象的類型是還是,結果類型更改。 轉載自我的個人博客 歡迎大家批評指正 1. 第一個頁面交互 這里最需要學習的老師的代碼中,每一部分功能都由函數控制,沒有創建一個全部變量。且最后有一個函數來控制執行代碼...

    elarity 評論0 收藏0
  • PHP入門

    摘要:運行在瀏覽器端。未來軟件的大趨勢。相同點為語言結構,不是函數輸出一個或者多個變量的類型,長度及值一般用于打印復雜變量結合標記格式化輸出如數組對象等輸出變量的值。一般用于打印變量。中認為變量的值為時,變量雖然定義了,但是無實際的意義。 PHP目錄======== php介紹 2 基礎 31 運算符 70 流程控制 77 函數 91 文件引入 100 ...

    abson 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<