真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

phpspl庫(kù)的使用-創(chuàng)新互聯(lián)

1.SPL 是什么?
SPL:standard php library php標(biāo)準(zhǔn)庫(kù),此 從php5.0起開始內(nèi)置的組件和接口,在5.3以后逐漸成熟。因?yàn)閮?nèi)置在php5開發(fā)環(huán)境中,無需任何配置。
根據(jù)官方定義,“a collection of interfaces and classes that are meant to solve standard problems.”
然而在目前的使用者,spl更多地被看做是一種使object模仿的array行為的interfaces和classes。
SPL對(duì)PHP引擎進(jìn)行了擴(kuò)展,例如ArrayAccess、Countable和SeekableIterator等接口,它們用于以數(shù)組形式操作對(duì)象。同時(shí)還可以使用RecursiveIterator,ArrayObjects等其他迭代器進(jìn)行數(shù)組的迭代操作。
他還內(nèi)置了幾個(gè)對(duì)象,例如Exceptions,SplObserver,spltorage以及splautoloadregister,splclasses,iteratorapply等的幫助函數(shù),用于重載對(duì)應(yīng)的功能。
2.Iterator
spl的核心概念是Iterator,這指一種設(shè)計(jì)模式(Design Pattern),"provide an object which traverses some aggregate structure,abstracting away assumptions about the implementation of that structure."
通俗的說,Iterator能夠使許多不同的數(shù)據(jù)結(jié)構(gòu),都能有統(tǒng)一的操作界面,比如一個(gè)數(shù)據(jù)庫(kù)的結(jié)果集、同一目錄的文件集或者一個(gè)文本中每一行構(gòu)成的集合。
SPL規(guī)定,所有部署了Iterator界面的class,都可以用在foreach loop中。Iterator界面包含以下必須部署的五個(gè)方法:

創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、陽(yáng)城網(wǎng)絡(luò)推廣、微信平臺(tái)小程序開發(fā)、陽(yáng)城網(wǎng)絡(luò)營(yíng)銷、陽(yáng)城企業(yè)策劃、陽(yáng)城品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們大的嘉獎(jiǎng);創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供陽(yáng)城建站搭建服務(wù),24小時(shí)服務(wù)熱線:028-86922220,官方網(wǎng)址:www.cdcxhl.com
  • current()

    This method returns the current index's value. You are solely
    responsible for tracking what the current index is as the
    interface does not do this for you.

    • key()

      This method returns the value of the current index's key. For
      foreach loops this is extremely important so that the key
      value can be populated.

    • next()

      This method moves the internal index forward one entry.

    • rewind()

      This method should reset the internal index to the first element.

    • valid()

      This method should return true or false if there is a current
      element. It is called after rewind() or next().

ArrayAccess界面
部署ArrayAccess界面,可以使object像Array那樣操作,但是必須包含四個(gè)必須部署的方法

  • offsetExists($offset)
    This method is used to tell php if there is a value
    for the key specified by offset. It should return
    true or false.
  • offsetGet($offset)
    This method is used to return the value specified
    by the key offset.
  • offsetSet($offset, $value)
    This method is used to set a value within the object,
    you can throw an exception from this function for a
    read-only collection.
  • offsetUnset($offset)
    This method is used when a value is removed from
    an array either through unset() or assigning the key
    a value of null. In the case of numerical arrays, this
    offset should not be deleted and the array should
    not be reindexed unless that is specifically the
    behavior you want.
    IteratorAggregate界面
    RecursiveIterator界面
    這個(gè)界面用于遍歷多層數(shù)據(jù),繼承了Iterator界面,因而也具有標(biāo)準(zhǔn)的current()/key()/next()和valid()方法。同時(shí)它自己還規(guī)定了getChildren()和hasChildren()方法。
    SeekableIterator界面
    SeekableIterator界面也是Iterator界面的延伸,除了Iterator的五個(gè)方法以外,還規(guī)定了seek()方法,參數(shù)是元素的位置,返回該元素。若該位置不存在,則拋出OutOfBoundsException。
    Countable界面
    這個(gè)界面規(guī)定了一個(gè)count()方法,返回結(jié)果集的數(shù)量
    3.SPL Classes
    spl內(nèi)置類
    查看所有內(nèi)置類
    foreach(spl_classes() as $key=>$val){
    echo $key."=>".$val.'
    ';
    }
    DirectoryIterator類
    這個(gè)類用來查看一個(gè)目錄中所有文件和子目錄
    foreach(new DirectoryIterator('./') as $Item)
    {
    echo $Item.'
    ';
    }
    catch(Exception $e)
    {
    echo 'No files Found!';
    }

ArrayObject類
此類將Array轉(zhuǎn)換為Object

ArrayIterator類
這個(gè)類實(shí)際上是對(duì)ArrayObject類的補(bǔ)充,為后者提供遍歷功能。也支持offset類方法和count()方法

RecursiveArrayIterator類和RecursiveIteratorIterator類
ArrayIterator類和ArrayObject類,只支持遍歷一維數(shù)組,如果要遍歷多維數(shù)組,必須先用RecursiveIteratorIterator生成一個(gè)Iterator,然后再對(duì)這個(gè)Iterator使用RecursiveIteratorIterator
FilterIterator
FilterIterator類可以對(duì)元素進(jìn)行過濾,只要在accept()方法中設(shè)置過濾條件就可以了。

SimpleXMLIterator類
這個(gè)類用來遍歷xml文件
CachingIterator類
這個(gè)類有一個(gè)hasNext()方法,用來判斷是否還有下一個(gè)元素
LimitIterator類
這個(gè)類用來限定返回結(jié)果集的數(shù)量和位置,必須提供offset和limit兩個(gè)參數(shù),與SQL命令中的limit語(yǔ)句類似
SplFileObject類
這個(gè)類用來對(duì)文本文件進(jìn)行遍歷

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。


網(wǎng)站題目:phpspl庫(kù)的使用-創(chuàng)新互聯(lián)
標(biāo)題URL:http://weahome.cn/article/dejshg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部