YAML miras alabilir miyim?

0 Cevap php

Bu soru Symfony bir sürü içerir ama sadece Symfony YAML bilir ve takip etmek birisi için yeterince kolay olmalı.

Benim Symfony modelleri üç aşamalı bir süreç geliyor: Birincisi, ben MySQL tablo oluşturmak. Bir YAML dosyası içine benim tablo yapısını dönüştürmek için: İkincisi, ben bir symfony komutu (build-şema symfony doktrin) çalıştırın. PHP koduna YAML dosyasını dönüştürmek için: Üçüncü, ben başka symfony komutunu (build-model symfony doktrin) çalıştırın.

İşte sorun: benim symfony kodunda sona istemiyorum veritabanında bazı tablolar vardır. my_table adlı bir denilen ve başka wordpress: Örneğin, iki tablo var diyelim. Ben ile sona YAML dosyası şöyle görünebilir:

MyTable:
  connection: doctrine
  tableName: my_table
Wordpress:
  connection: doctrine
  tableName: wordpress

İşte wordpress tablo benim symfony modelleri ile ilgisi dışında harika. Sonuç benim veritabanında bir değişiklik yapmak ve bu YAML dosyası oluşturmak her zaman, ben elle çıkarmak zorunda olduğunu wordpress. Bu sinir bozucu!

Ben baseConfig.php veya bu gibi görünen bir şey olarak adlandırılan bir dosya oluşturmak mümkün istiyorum:

$config = array(
  'MyTable' => array(
    'connection' => 'doctrine',
    'tableName' => 'my_table',
  ),
  'Wordpress' => array(
    'connection' => 'doctrine',
    'tableName' => 'wordpress',
  ),
);

Ve sonra config.php ya da baz config değişiklikler yapabilir bir şey olarak adlandırılan ayrı bir dosya olabilir:

unset($config['Wordpress']);

So my question is: is there any way to convert YAML into executable PHP code (as opposed to load YAML INTO PHP code like what sfYaml::load() does) to achieve this sort of thing? Or is there maybe some other way to achieve YAML inheritance? Thanks, Jason

0 Cevap