最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP SPL標(biāo)準(zhǔn)庫(kù)之SplFixedArray使用實(shí)例

 更新時(shí)間:2015年05月12日 09:48:55   投稿:junjie  
這篇文章主要介紹了PHP SPL標(biāo)準(zhǔn)庫(kù)之SplFixedArray使用實(shí)例,SplFixedArray主要是處理數(shù)組相關(guān)的主要功能,它是固定長(zhǎng)度的,比普通的數(shù)組處理更快,需要的朋友可以參考下

SplFixedArray主要是處理數(shù)組相關(guān)的主要功能,與普通php array不同的是,它是固定長(zhǎng)度的,且以數(shù)字為鍵名的數(shù)組,優(yōu)勢(shì)就是比普通的數(shù)組處理更快。

看看我本機(jī)的Benchmark測(cè)試:

ini_set('memory_limit','12800M');
 
for($size = 10000; $size < 10000000; $size *= 4) {
  echo PHP_EOL . "Testing size: $size" . PHP_EOL;
  for($s = microtime(true), $container = Array(), $i = 0; $i < $size; $i++) $container[$i] = NULL;
  echo "Array(): " . (microtime(true) - $s) . PHP_EOL;
 
  for($s = microtime(true), $container = new SplFixedArray($size), $i = 0; $i < $size; $i++) $container[$i] = NULL;
  echo "SplArray(): " . (microtime(true) - $s) . PHP_EOL;
}

結(jié)果如下:

Testing size: 10000
Array(): 0.004000186920166
SplArray(): 0.0019998550415039
 
Testing size: 40000
Array(): 0.017001152038574
SplArray(): 0.0090007781982422
 
Testing size: 160000
Array(): 0.050002098083496
SplArray(): 0.046003103256226
 
Testing size: 640000
Array(): 0.19701099395752
SplArray(): 0.16700983047485
 
Testing size: 2560000
Array(): 0.75704312324524
SplArray(): 0.67303895950317

通常情況下SplFixedArray要比php array快上20%~30%,所以如果你是處理巨大數(shù)量的固定長(zhǎng)度數(shù)組,還是強(qiáng)烈建議使用。
SplFixedArray類摘要如下:

SplFixedArray implements Iterator  , ArrayAccess  , Countable  {
  /* 方法 */
  public __construct ([ int $size = 0 ] )
  public int count ( void )
  public mixed current ( void )
  public static SplFixedArray fromArray ( array $array [, bool $save_indexes = true ] )
  public int getSize ( void )
  public int key ( void )
  public void next ( void )
  public bool offsetExists ( int $index )
  public mixed offsetGet ( int $index )
  public void offsetSet ( int $index , mixed $newval )
  public void offsetUnset ( int $index )
  public void rewind ( void )
  public int setSize ( int $size )
  public array toArray ( void )
  public bool valid ( void )
  public void __wakeup ( void )
}

 使用SplFixedArray:

$arr = new SplFixedArray(4);
$arr[0] = 'php';
$arr[1] = 1;
$arr[3] = 'python';
 
//遍歷, $arr[2] 為null
foreach($arr as $v) {
  echo $v . PHP_EOL;
}
 
//獲取數(shù)組長(zhǎng)度
echo $arr->getSize(); //4
 
//增加數(shù)組長(zhǎng)度
$arr->setSize(5);
$arr[4] = 'new one';
 
//捕獲異常
try{
  echo $arr[10];
} catch (RuntimeException $e) {
  echo $e->getMessage();
} 

相關(guān)文章

  • php頭像上傳預(yù)覽實(shí)例代碼

    php頭像上傳預(yù)覽實(shí)例代碼

    本篇文章主要介紹了php頭像上傳預(yù)覽實(shí)例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-05-05
  • laravel 5 實(shí)現(xiàn)模板主題功能(續(xù))

    laravel 5 實(shí)現(xiàn)模板主題功能(續(xù))

    前面一篇文章,我們簡(jiǎn)單討論了laravel模板主題功能,本文我們繼續(xù)探討laravel模板主題功能的實(shí)現(xiàn),本次實(shí)現(xiàn)比較重,有興趣慢慢看吧。
    2015-03-03
  • 阿里云PHP SMS短信服務(wù)驗(yàn)證碼發(fā)送方法

    阿里云PHP SMS短信服務(wù)驗(yàn)證碼發(fā)送方法

    這篇文章主要介紹了阿里云PHP SMS短信服務(wù)驗(yàn)證碼發(fā)送方法,需要的朋友可以參考下
    2017-07-07
  • php+jQuery+Ajax簡(jiǎn)單實(shí)現(xiàn)頁(yè)面異步刷新

    php+jQuery+Ajax簡(jiǎn)單實(shí)現(xiàn)頁(yè)面異步刷新

    這篇文章主要為大家詳細(xì)介紹了php+jQuery+Ajax簡(jiǎn)單實(shí)現(xiàn)頁(yè)面異步刷新,,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-08-08
  • laravel5表單唯一驗(yàn)證的實(shí)例代碼

    laravel5表單唯一驗(yàn)證的實(shí)例代碼

    今天小編就為大家分享一篇laravel5表單唯一驗(yàn)證的實(shí)例代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-09-09
  • 在Laravel 中實(shí)現(xiàn)是否關(guān)注的示例

    在Laravel 中實(shí)現(xiàn)是否關(guān)注的示例

    今天小編就為大家分享一篇在Laravel 中實(shí)現(xiàn)是否關(guān)注的示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-10-10
  • laravel中的錯(cuò)誤與日志用法詳解

    laravel中的錯(cuò)誤與日志用法詳解

    這篇文章主要介紹了laravel中的錯(cuò)誤與日志用法,結(jié)合實(shí)例形式詳細(xì)分析了laravel中錯(cuò)誤與日志的相關(guān)設(shè)置與使用技巧,需要的朋友可以參考下
    2016-07-07
  • 淺析php適配器模式(Adapter)

    淺析php適配器模式(Adapter)

    本文講解的是php設(shè)計(jì)模式的結(jié)構(gòu)性模式的概念以及機(jī)構(gòu)性模式的七種類中的適配器模式,需要的朋友可以參考下
    2014-11-11
  • smarty自定義函數(shù)htmlcheckboxes用法實(shí)例

    smarty自定義函數(shù)htmlcheckboxes用法實(shí)例

    這篇文章主要介紹了smarty自定義函數(shù)htmlcheckboxes用法,實(shí)例分析了smarty模板與函數(shù)的使用技巧,需要的朋友可以參考下
    2015-01-01
  • Laravel異常上下文解決方案分享

    Laravel異常上下文解決方案分享

    異常處理是編程中十分重要但也最容易被人忽視的語(yǔ)言特性,下面這篇文章主要給大家介紹了關(guān)于Laravel異常上下文解決方案的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-01-01

最新評(píng)論

当阳市| 阜南县| 罗甸县| 西充县| 内丘县| 曲水县| 西乡县| 乐至县| 广州市| 舒兰市| 凌源市| 平阳县| 武功县| 错那县| 湖口县| 两当县| 怀集县| 腾冲县| 蒙山县| 汶上县| 建阳市| 宝鸡市| 永安市| 呼和浩特市| 卢龙县| 南充市| 泾源县| 秦皇岛市| 海安县| 桂林市| 萨嘎县| 甘肃省| 池州市| 华安县| 子洲县| 永清县| 新绛县| 安溪县| 金阳县| 长沙市| 宁波市|