在看drupal8,發(fā)現(xiàn)其模塊和主題的定義使用的是YAML文件。drupal8使用的Symfony框架中YAML文件結(jié)構(gòu),故翻譯整理學(xué)習(xí)下,有理解不準(zhǔn)確的地方請(qǐng)多多指教。
為克山等地區(qū)用戶(hù)提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及克山網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、克山網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專(zhuān)業(yè)、用心的態(tài)度為用戶(hù)提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶(hù)的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!String
一般字符串可以使用單引號(hào),雙引號(hào)或者不使用引號(hào)。
A string in YAML 'A singled-quoted string in YAML' "A double-quoted string in YAML"當(dāng)使用單引號(hào)字符串時(shí),其內(nèi)容中的任何單引號(hào)必須加倍才能轉(zhuǎn)義:
'A single quote '' inside a single-quoted string'包含以下任何字符都需要引號(hào),可以使用單引號(hào)或雙引號(hào),但使用單引號(hào)更方便
:, {, }, [, ], ,, &, *, #, ?, |, -, <, >, =, !, %, @, `
雙引號(hào)方式提供了以一種表示任意字符串的方法,使用\來(lái)轉(zhuǎn)義字符和序列
\0, \x01, \x02, \x03, \x04, \x05, \x06, \a, \b, \t, \n, \v, \f, \r, \x0e, \x0f, \x10, \x11, \x12, \x13, \x14, \x15, \x16, \x17, \x18, \x19, \x1a, \e, \x1c, \x1d, \x1e, \x1f, \N, \_, \L, \P
"A double-quoted string in YAML\n"注:測(cè)試發(fā)現(xiàn),當(dāng)字符串中包含上面字符時(shí),使用單引號(hào)也可以轉(zhuǎn)義的
最后還有其他一些情況,不管你使用單引號(hào)還是雙引號(hào)
true or false ( 否則就是布爾值 )
null or ~ (否則認(rèn)為是null)
當(dāng)看起來(lái)像整數(shù)如2,14;浮點(diǎn)數(shù)如2.6,14.9;指數(shù)如12e7等,否則被視為一個(gè)數(shù)值
當(dāng)看起來(lái)像一個(gè)日期如2014-12-31,否則會(huì)自動(dòng)轉(zhuǎn)為一個(gè)Unix時(shí)間戳
當(dāng)一個(gè)字符串中包含換行符時(shí),可以使用由(|)管道符來(lái)指示該字符串將跨越多行。在文字中,換行符被保存下來(lái)
| \/ /| |\/| | / / | | | |__或者字符串可以使用折疊樣式編寫(xiě),用>表示,其中每行換行符被空格替換
> This is a very long sentence that spans several lines in the YAML but which will be rendered as a string without carriage returns.對(duì)應(yīng)PHP為
array('PHP','perl','Python') PHP: 5.2 MySQL: 5.1 Apache: 2.2.20對(duì)應(yīng)PHP為
array('PHP' => 5.2, 'MySQL' => 5.1, 'Apache' => '2.2.20');'symfony 1.0': PHP: 5.0 Propel: 1.2 'symfony 1.2': PHP: 5.2 Propel: 1.3對(duì)應(yīng)PHP為
array( 'symfony 1.0' => array( 'PHP' => 5.0, 'Propel' => 1.2, ), 'symfony 1.2' => array( 'PHP' => 5.2, 'Propel' => 1.3, ), );在YAML文件中使用縮進(jìn)時(shí)需要記住一件重要的事情:縮進(jìn)必須由一個(gè)或多個(gè)空格完成,但從不使用制表符。
也可以根據(jù)需要嵌套序列和映射
'Chapter 1': - Introduction - Event Types 'Chapter 2': - Introduction - Helpers也可使用明顯的指示符而不是縮進(jìn)
[PHP, Perl, Python] { PHP: 5.2, MySQL: 5.1, Apache: 2.2.20 } 'Chapter 1': [Introduction, Event Types] 'Chapter 2': [Introduction, Helpers] 'symfony 1.0': { PHP: 5.0, Propel: 1.2 } 'symfony 1.2': { PHP: 5.2, Propel: 1.3 }Explicit Typing
Unsupported YAML Features
Symfony Yaml組件不支持以下YAML特性:
Multi-documents (--- and ... markers); 多文檔(---和...標(biāo)記);
Complex mapping keys and complex values starting with ?
;以?開(kāi)頭的復(fù)雜映射鍵和復(fù)數(shù)值;
Tagged values as keys;標(biāo)記為鍵的值;
下面標(biāo)簽和類(lèi)型: !!set, !!omap, !!pairs, !!set, !!seq, !!bool, !!int, !!merge, !!null, !!timestamp, !!value, !!yaml;
標(biāo)記(TAG指令;例如:%TAG!標(biāo)記:example.com,2000:app /)和標(biāo)記引用(例如:!
映射元素使用類(lèi)似序列的語(yǔ)法(例如:{foo,bar};改為使用{foo:?,bar:?})
原文地址:http://symfony.com/doc/current/components/yaml/yaml_format.html
驗(yàn)證地址:https://codebeautify.org/yaml-to-json-xml-csv
---
僅供個(gè)人理解參考
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。