PHP 용 좋은 YAML 파서를 아는 사람이 있습니까? 그렇다면이 라이브러리의 장단점은 무엇입니까?
답변
최종 업데이트 : 2017 년 7 월 26 일
다음은 PHP에서 YAML 상태를 요약 한 것입니다.
- C 라이브러리에 대한 래퍼 : 빠른 속도가 필요한 경우 다음을 원할 것입니다.
-
순수 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
답변
Spyc : 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이 매우 많이 사용하게 그레 구 아르 휴 버트에 의해 블로그 게시물을 비 심포니 프로젝트에 자신의 YAML 라이브러리를 사용하는 방법을 보여줍니다.
답변
Symfony2에는 대부분 의 YAML 1.2 사양 을 지원하는 YAML 구성 요소가 있습니다.
답변
프로젝트에서 YAML을 많이 사용하는 경우 spyc 또는 Symfony YAML과 같은 순수 PHP 라이브러리가 충분히 빠르지 않을 수 있습니다. C YAML 파서에 대해 최소한 두 개의 PHP 바인딩이 있습니다.
답변
이 기사 http://devzone.zend.com/article/2585-using-yaml-with-php-and-pecl 에서 따르는 프로세스를 제안합니다.
답변
sfYaml 시도해보십시오 . 내가 아는 것이 최고입니다.
Symfony와 Doctrine ORM이 이것을 사용하고 있습니다.
그것을 얻으려면 Doctrine 1.2를 다운로드sfYaml
하고 vendor
디렉토리 에서 추출하십시오 .
귀하의 필요에 맞는지 알려주십시오.