摘要:用處理,常用的方法有兩種擴(kuò)展擴(kuò)展需要以上,需要以上。我個(gè)人傾向于,因?yàn)檫€需要編譯安裝,有的時(shí)候不方便比如虛擬主機(jī)空間什么的,雖然不支持,但官方也不支持了,所以也不算什么不足。擴(kuò)展安裝標(biāo)準(zhǔn)的安裝步驟,這里就不羅嗦了。
用PHP處理YAML,常用的方法有兩種:
PECL擴(kuò)展YAML
spyc
PECL擴(kuò)展需要PHP 5.2以上,SPYC 需要PHP 5.3以上。
我個(gè)人傾向于SPYC,因?yàn)镻ECL還需要編譯安裝,有的時(shí)候不方便(比如虛擬主機(jī)空間什么的),SPYC 雖然不支持 PHP 5.2,但5.2官方也不支持了,所以也不算什么不足。
1 PECL擴(kuò)展YAML 安裝標(biāo)準(zhǔn)的PECL安裝步驟,這里就不羅嗦了。
代碼例子假設(shè)我們有這樣一個(gè)數(shù)組:
$addr = array( "given" => "Chris", "family"=> "Dumars", "address"=> array( "lines"=> "458 Walkman Dr. Suite #292", "city"=> "Royal Oak", "state"=> "MI", "postal"=> 48046, ), ); $invoice = array ( "invoice"=> 34843, "date"=> "2001-01-23", "bill-to"=> $addr, "ship-to"=> $addr, "product"=> array( array( "sku"=> "BL394D", "quantity"=> 4, "description"=> "Basketball", "price"=> 450, ), array( "sku"=> "BL4438H", "quantity"=> 1, "description"=> "Super Hoop", "price"=> 2392, ), ), "tax"=> 251.42, "total"=> 4443.52, "comments"=> "Late afternoon is best. Backup contact is Nancy Billsmer @ 338-4338.", );
使用yaml_emit可以將其轉(zhuǎn)化成YAML
$yaml = yaml_emit($invoice);
使用yaml_parse解析YAML:
$parsed = yaml_parse($yaml);2 使用spyc 安裝
可以使用Composer安裝,當(dāng)然也可以直接require_once或include.
代碼示例生成YAML:
"A sequence","second" => "of mapped values"); $array["Mapped"] = array("A sequence","which is mapped"); $array["A Note"] = "What if your text is too long?"; $array["Another Note"] = "If that is the case, the dumper will probably fold your text by using a block. Kinda like this."; $array["The trick?"] = "The trick is that we overrode the default indent, 2, to 4 and the default wordwrap, 40, to 60."; $array["Old Dog"] = "And if you want to preserve line breaks, go ahead!"; $array["key:withcolon"] = "Should support this to"; $yaml = Spyc::YAMLDump($array,4,60);
解析YAML:
解析更常用,所以還提供了函數(shù),上面的語(yǔ)句等價(jià)于:
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/20674.html
摘要:今天查看擴(kuò)展庫(kù)時(shí),看到有個(gè)叫的擴(kuò)展位列榜首,竟有多萬(wàn)下載數(shù),這么牛逼的東西我咋沒(méi)聽(tīng)說(shuō)過(guò)那既然孤陋寡聞了,那就趕緊學(xué)習(xí)學(xué)習(xí)吧。 今天查看php擴(kuò)展庫(kù)時(shí)(http://pecl.php.net/package-s...),看到有個(gè)叫yaml的擴(kuò)展位列榜首,竟有2000多萬(wàn)下載數(shù),這么牛逼的東西我咋沒(méi)聽(tīng)說(shuō)過(guò)那?既然孤陋寡聞了,那就趕緊學(xué)習(xí)學(xué)習(xí)吧。showImg(https://segment...
摘要:對(duì)于這兩種不同形式的參數(shù),處理方式也不一樣,為字符串形式字符串則表示單個(gè)配置設(shè)置二維數(shù)組判斷字符串中是否帶沒(méi)有直接把的小寫(xiě)形式作為,作為值設(shè)置到配置中如果帶,只處理前面兩項(xiàng),即把字符串通過(guò)分割成數(shù)組,取數(shù)組的前面兩項(xiàng),把設(shè)置到配置中。 源碼分析---入口篇 源碼分析 全局配置加載類 全局配置類的主要代碼如下: class Config { /** * @var ar...
摘要:整體與很像,但是做了一些更改,為了更適應(yīng)中國(guó)國(guó)內(nèi)的開(kāi)發(fā)網(wǎng)絡(luò)環(huán)境。表示宿主機(jī)器的目錄,表示環(huán)境目錄。將虛擬機(jī)置于休眠狀態(tài)。在開(kāi)發(fā)過(guò)程中可能會(huì)需要增加多個(gè)站點(diǎn)來(lái)運(yùn)行不同的開(kāi)發(fā)程序。與擴(kuò)展名重名,建議將的改成為佳。 SimfaseDevEnv 介紹 SimfaseDevEnv是為php開(kāi)發(fā)者提供的開(kāi)發(fā)環(huán)境,構(gòu)建在vagrant之上;Vagrant的Vagrangfile配置文件是在Homes...
摘要:路由漂亮的是任何嚴(yán)謹(jǐn)?shù)膽?yīng)用程序所必須的這意味著像這樣丑陋的要被所取代具有靈活性更加重要如果你需要將更改為需要做些什么你需要搜索并更新多少鏈接才能做出這種改動(dòng)如果你使用的是的路由更改將是很簡(jiǎn)單的創(chuàng)建路由路由是從到控制器的映射假如你想要一個(gè) 路由 漂亮的URL是任何嚴(yán)謹(jǐn)?shù)腤eb應(yīng)用程序所必須的. 這意味著像 index.php?article_id=57 這樣丑陋的URL要被 /read/...
摘要:作為骨灰級(jí)粉絲,一直以來(lái)對(duì)第三方監(jiān)控都是拒絕的。例如白屏?xí)r間首屏?xí)r間腳本錯(cuò)誤網(wǎng)頁(yè)加載就緒時(shí)間各種瀏覽器的訪問(wèn)情況,甚至能了解不同瀏覽器運(yùn)營(yíng)商地區(qū)用戶的訪問(wèn)狀況。腳本錯(cuò)誤在所難免,錯(cuò)誤進(jìn)一步導(dǎo)致網(wǎng)站部分功能無(wú)法使用。 作為 Zabbix 骨灰級(jí)粉絲,一直以來(lái)對(duì)第三方監(jiān)控(APM)都是拒絕的。一來(lái)覺(jué)得收費(fèi),二來(lái)?yè)?dān)心數(shù)據(jù)被人所知,三來(lái)覺(jué)得 Zabbix 牛逼到無(wú)可取代。但是,隨著 APM 市...
閱讀 3582·2021-11-24 10:19
閱讀 3721·2021-09-30 09:47
閱讀 1287·2019-08-30 15:56
閱讀 785·2019-08-29 15:11
閱讀 901·2019-08-29 13:43
閱讀 3565·2019-08-28 18:25
閱讀 2158·2019-08-26 13:27
閱讀 1434·2019-08-26 11:44