PHP:
Arbeider med YAML
Hvordan:
PHP, i sine nåværende iterasjoner, støtter ikke parsing av YAML som en del av sitt standardbibliotek. Den mest strake veien til å arbeide med YAML i PHP er ved å bruke Symfony YAML-komponenten eller yaml
PECL-utvidelsen.
Bruke Symfony YAML-komponenten
Først, installer Symfony YAML-komponenten via Composer:
composer require symfony/yaml
Deretter kan du parse og dumpe YAML-innhold som følger:
<?php
require_once __DIR__.'/vendor/autoload.php';
use Symfony\Component\Yaml\Yaml;
// Parsing YAML
$yamlString = <<<YAML
greet: Hallo, Verden!
framework:
name: Symfony
language: PHP
YAML;
$array = Yaml::parse($yamlString);
print_r($array);
// Lage YAML fra et array
$array = [
'greet' => 'Hallo, YAML!',
'framework' => [
'name' => 'Symfony',
'language' => 'PHP',
],
];
$yaml = Yaml::dump($array);
echo $yaml;
Eksempel på output når man parser:
Array
(
[greet] => Hallo, Verden!
[framework] => Array
(
[name] => Symfony
[language] => PHP
)
)
Eksempel på output når man dumper:
greet: Hallo, YAML!
framework:
name: Symfony
language: PHP
Bruke yaml
PECL-utvidelsen
Om du foretrekker, eller om prosjektets krav tillater det, kan PECL-utvidelsen være en annen effektiv måte å arbeide med YAML på. Først, sørg for at utvidelsen er installert:
pecl install yaml
Deretter, aktiver den i din php.ini
-konfigurasjon:
extension=yaml.so
Her er hvordan du parser og emitter YAML:
<?php
// Parsing YAML
$yamlString = <<<YAML
greet: Hallo, Verden!
framework:
name: Symfony
language: PHP
YAML;
$array = yaml_parse($yamlString);
print_r($array);
// Lage YAML fra et array
$array = [
'greet' => 'Hallo, YAML!',
'framework' => [
'name' => 'Symfony',
'language' => 'PHP',
],
];
$yaml = yaml_emit($array);
echo $yaml;
Outputen vil være lignende som med Symfony-komponenten, noe som illustrerer YAMLs rolle som en bro mellom menneskelesbart format og PHP array-strukturer, noe som lettere tilrettelegger for konfigurasjon og databehandling.