PHP:
YAML로 작업하기
방법:
PHP는 현재 버전에서 표준 라이브러리의 일부로 YAML을 파싱하는 것을 지원하지 않습니다. PHP에서 YAML을 사용하는 가장 간단한 방법은 Symfony YAML 컴포넌트나 yaml
PECL 확장을 사용하는 것입니다.
Symfony YAML 컴포넌트 사용하기
먼저, Composer를 통해 Symfony YAML 컴포넌트를 설치하세요:
composer require symfony/yaml
그런 다음, 다음과 같이 YAML 콘텐츠를 파싱하고 덤프할 수 있습니다:
<?php
require_once __DIR__.'/vendor/autoload.php';
use Symfony\Component\Yaml\Yaml;
// YAML 파싱
$yamlString = <<<YAML
greet: Hello, World!
framework:
name: Symfony
language: PHP
YAML;
$array = Yaml::parse($yamlString);
print_r($array);
// 배열에서 YAML 생성하기
$array = [
'greet' => 'Hello, YAML!',
'framework' => [
'name' => 'Symfony',
'language' => 'PHP',
],
];
$yaml = Yaml::dump($array);
echo $yaml;
파싱 시 샘플 출력:
Array
(
[greet] => Hello, World!
[framework] => Array
(
[name] => Symfony
[language] => PHP
)
)
덤프 시 샘플 출력:
greet: Hello, YAML!
framework:
name: Symfony
language: PHP
yaml
PECL 확장 사용하기
원한다면, 또는 프로젝트 요구 사항이 허용한다면, PECL 확장은 YAML을 다루는 또 다른 효율적인 방법일 수 있습니다. 우선, 확장 프로그램이 설치되어 있는지 확인하세요:
pecl install yaml
그런 다음, php.ini
설정에서 활성화하세요:
extension=yaml.so
다음은 YAML을 파싱하고 내보내는 방법입니다:
<?php
// YAML 파싱
$yamlString = <<<YAML
greet: Hello, World!
framework:
name: Symfony
language: PHP
YAML;
$array = yaml_parse($yamlString);
print_r($array);
// 배열에서 YAML 생성하기
$array = [
'greet' => 'Hello, YAML!',
'framework' => [
'name' => 'Symfony',
'language' => 'PHP',
],
];
$yaml = yaml_emit($array);
echo $yaml;
출력 결과는 Symfony 컴포넌트의 것과 비슷할 것이며, YAML이 사람이 읽을 수 있는 형식과 PHP 배열 구조 사이의 다리 역할을 함으로써, 구성 및 데이터 처리를 더 쉽게 만듦을 보여줍니다.