क्या किसी को PHP के लिए एक अच्छा YAML पार्सर का पता है? यदि हां, तो इस पुस्तकालय के पेशेवरों और विपक्ष क्या हैं?
क्या किसी को PHP के लिए एक अच्छा YAML पार्सर का पता है? यदि हां, तो इस पुस्तकालय के पेशेवरों और विपक्ष क्या हैं?
जवाबों:
अंतिम अपडेट : 26 जुलाई, 2017
यहाँ PHP में YAML की स्थिति का सारांश दिया गया है:
शुद्ध PHP कार्यान्वयन:
इस लेखन के समय, नवीनतम संस्करण पूर्वोक्त पुस्तकालयों के लिए दिनांक जारी करते हैं और YAML युक्ति के संस्करण (1.2 नवीनतम संस्करण है) जिसका वे समर्थन करते हैं:
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
स्पाईक: https://github.com/mustangostang/spyc
शुद्ध PHP कार्यान्वयन, इसलिए आपको स्थापना के लिए सर्वर में कोई संशोधन करने की आवश्यकता नहीं है। यदि गति बहुत चिंताजनक है, तो यह आदर्श समाधान नहीं हो सकता है, लेकिन यदि आप कॉन्फ़िगरेशन या अपेक्षाकृत कम मात्रा के उपयोग के लिए YAML का उपयोग कर रहे हैं, तो यह एक शानदार समाधान है।
एक YAML दस्तावेज़ को देखते हुए, Spyc एक सरणी लौटाएगा जिसका उपयोग आप उपयोग कर सकते हैं हालांकि आप फिट दिखते हैं।
require_once "spyc.php";
$data = Spyc::YAMLLoad($myfile);
एक सरणी को देखते हुए, Spyc एक स्ट्रिंग लौटाएगा जिसमें आपके डेटा से निर्मित एक YAML दस्तावेज़ होगा।
$yaml_str = Spyc::YAMLDump($myarray);
सिम्फोनी ढांचा YAML, इस बात का बहुत गहन उपयोग करता Grégoire हुबर्ट से ब्लॉग पोस्ट एक गैर सिम्फोनी परियोजना में उनके YAML लाइब्रेरी का उपयोग कर के लिए रखें।
Symfony2 में एक YAML घटक है जो YAML 1.2 युक्ति के अधिकांश का समर्थन करता है
sfYaml
जैसे है।
यदि आप अपने प्रोजेक्ट में बहुत सारे YAML का उपयोग कर रहे हैं, तो आप पा सकते हैं कि शुद्ध PHP लाइब्रेरी जैसे कि स्पाईक या सिम्फनी YAML बहुत तेज़ नहीं हैं। C YAML पार्सर्स के लिए कम से कम दो PHP बाइंडिंग हैं:
मैं इस लेख में दी गई प्रक्रिया का सुझाव दूंगा http://devzone.zend.com/article/2585-use-yaml-with-php-and-pecl
SfYaml की कोशिश करो , यह सबसे अच्छा मुझे पता है।
सिम्फनी और डॉक्ट्रिन ओआरएम इसका उपयोग कर रहे हैं।
इसे पाने के लिए, आप डॉक्ट्रिन 1.2 डाउनलोड कर सकते हैं और डायरेक्टरी sfYaml
से निकाल सकते हैं vendor
।
आपको बता दें कि यह आपकी आवश्यकताओं के अनुरूप है।
यदि आपको अपना YAML जल्दी से परीक्षण करने की आवश्यकता है, तो मैंने बनाया: http://yaml-online-parser.appspot.com/ । यह मुझे YAML लिखने में मदद करता है, विशेष रूप से सिर्फ सीखने के दौरान।