PHP için iyi bir YAML Ayrıştırıcısı bilen var mı? Öyleyse, bu kütüphanenin artıları ve eksileri nelerdir?
PHP için iyi bir YAML Ayrıştırıcısı bilen var mı? Öyleyse, bu kütüphanenin artıları ve eksileri nelerdir?
Yanıtlar:
Son güncelleme : 26 Temmuz 2017
PHP'deki YAML durumunun bir özeti:
Saf PHP uygulamaları:
Bu yazının yazıldığı sırada, yukarıda belirtilen kitaplıkların ve destekledikleri YAML spesifikasyonunun sürümlerinin (1.2 en son sürüm) en son sürümlerinin yayınlanma tarihleri şunlardır:
php-yaml 1.3.0 2016-09-24 YAML 1.1 [PHP 5]
php-yaml 2.0.0 2016-09-24 YAML 1.1 [PHP 7]
syck 0.9.3 2008-11-18 YAML 1.0
sfYaml 3.3.5 2017-06-15 YAML 1.1, most of 1.2
spyc 0.6.2 2017-02-24 YAML 1.1
Casus: https://github.com/mustangostang/spyc
Saf PHP uygulaması, bu nedenle kurulum için sunucuda herhangi bir değişiklik yapmanız gerekmez. Hız ciddi bir endişe kaynağıysa, ideal çözüm olmayabilir, ancak yapılandırmalar veya nispeten düşük hacimli kullanım için YAML kullanıyorsanız, harika bir çözümdür.
Bir YAML belgesi verildiğinde, Spyc uygun gördüğünüz şekilde kullanabileceğiniz bir dizi döndürecektir.
require_once "spyc.php";
$data = Spyc::YAMLLoad($myfile);
Bir dizi verildiğinde, Spyc, verilerinizden oluşturulmuş bir YAML belgesi içeren bir dize döndürecektir.
$yaml_str = Spyc::YAMLDump($myarray);
Symfony çerçeve YAML, bunun çok ağır kullanır Grégoire Hubert tarafından blog post olmayan bir symfony projedeki YAML kitaplığı kullanarak gösterir.
Symfony2, YAML 1.2 özelliklerinin çoğunu destekleyen bir YAML bileşenine sahiptir
sfYaml
örneğin.
Projenizde çok fazla YAML kullanıyorsanız, spyc veya Symfony YAML gibi saf PHP kitaplıklarının yeterince hızlı olmadığını görebilirsiniz. C YAML çözümleyicileri için en az iki PHP bağı vardır:
Bu makalede izlenen süreci öneriyorum http://devzone.zend.com/article/2585-using-yaml-with-php-and-pecl
SfYaml'ı deneyin , bildiğim en iyisi bu.
Symfony ve Doctrine ORM bunu kullanıyor.
Almak için Doctrine 1.2'yi indiripsfYaml
buradan çıkartabilirsiniz .vendor
dizine.
İhtiyaçlarınıza uygun olup olmadığını bize bildirin.
YAML'nizi hızlı bir şekilde test etmeniz gerekiyorsa, şunu oluşturdum: http://yaml-online-parser.appspot.com/ . Özellikle yeni öğrenirken YAML yazmama yardımcı oluyor.