PHPでYAML

            <div class="section">

PHPYAMLを扱う場合、

「Spyc」という便利なライブラリがあるので、Spycを使います。

以下のサイトからソースコードをダウンロードし、適当なディレクトリに配置します。

http://spyc.sourceforge.net/

YAMLファイルからデータを読み込む方法

例として、以下のようなYAMLファイルがあるとします。
dragonquest_1.yml
caracter:
 hero:
  name: Loto
  hp: 110
  mp: 50
  job: soldier
 heroine:
  name: Laura
  hp: 40
  mp: 120
  job: princess
ソースコード
<?php
 require_once('spyc.php');
 $array = Spyc::YAMLLoad('dragonquest_1.yml');
 print_r($array);
?>
出力
Array
(
 [caracter] => Array
  (
   [hero] => Array
    (
     [name] => Loto
     [hp] => 110
     [mp] => 50
     [job] => soldier
    )
   [heroine] => Array
    (
     [name] => Laura
     [hp] => 40
     [mp] => 120
     [job] => princess
    )
  )
)

データからYAML形式データを生成する方法

ソースコード
<?php
 require_once('spyc.php');
 $dragonquest_1 = array("caracter" =>
  array("hero" =>
    array("name" => "Loto",
       "hp" => 110,
       "mp" => 50,
       "job" => "soldier"),
     "heroine" =>
    array("name" => "Laura",
       "hp" => 40,
       "mp" => 120,
       "job" => "princess")));
 $yaml = Spyc::YAMLDump($array,4,60);
 print_r($yaml);
?>
出力
caracter:
 hero:
  name: Loto
  hp: 110
  mp: 50
  job: soldier
 heroine:
  name: Laura
  hp: 40
  mp: 120
 job: princess

複数ファイルで共有したい設定などはYAMLに書く方が便利みたいです。

参考
http://www.phppro.jp/phptips/archives/vol13/3