moduleのアクセス順でエラーになった

原因はわかった。解決はした。
でも根本的な解決法はわからない。

YAMLパーサにsyckを使っていると、

<?php // config/sfSecurityConfigHandler.class.php の parseYamls内
  sfYaml::Load('data/symfony/config/security.yml');

でエラーになる(場合がある)。

data/symfony/config/security.ymlが空(0バイト)なのがだめらしい。

data/symfony/config/security.ymlに

default:

を追加してあげたら直った。


原因はsyck周りっぽい。

出力しながら調べてみたら、

<?php // util/sfYaml.class.php
// ※A var_dump('syck_load');
    if (function_exists('syck_load'))
    {
// ※B echo 'syck_load';
// ※C var_dump('syck_load');
      $retval = syck_load($input);
var_dump($retval);
      return is_array($retval) ? $retval : array();
    }

※Aだとエラーになって、
※BだとUNKNOWN:0が出力されて
※Cだと''になる。
var_dumpをechoに変えると、メモリオーバーになる。
(ini_get_all()でもメモリオーバーになっちゃったりとか)


同じOSでもエラーになったり、ならなかったりする。
どこが原因なのかがわからない。