(PECL yaml >= 0.5.0)
yaml_emit — Возвращает YAML представление значения
$data
[, int $encoding
= YAML_ANY_ENCODING
[, int $linebreak
= YAML_ANY_BREAK
[, array $callbacks
= null
]]] )
Возвращает YAML представление переданных в параметре data
данных.
data
Данные data
для кодирования. Параметр может быть любого
типа, за исключением ресурса (resource).
encoding
Выходная кодировка выбираемая из
YAML_ANY_ENCODING
,
YAML_UTF8_ENCODING
,
YAML_UTF16LE_ENCODING
,
YAML_UTF16BE_ENCODING
.
linebreak
Символ перевода строки в выводе
YAML_ANY_BREAK
,
YAML_CR_BREAK
,
YAML_LN_BREAK
,
YAML_CRLN_BREAK
.
callbacks
Обработчики контента для создания узлов YAML. Ассоциативный массив, где в качестве ключей используются имена классов, а в качестве значений, callback-функции, которые будут создавать узлы для этих классов. Больше подробностей можно узнать в разделе испускающие callback-функции.
Возвращает YAML закодированную string при успешной обработке.
Версия | Описание |
---|---|
1.1.0 |
Добавлен параметр callbacks .
|
Пример #1 Пример использования yaml_emit()
<?php
$addr = array(
"given" => "Chris",
"family"=> "Dumars",
"address"=> array(
"lines"=> "458 Walkman Dr.
Suite #292",
"city"=> "Royal Oak",
"state"=> "MI",
"postal"=> 48046,
),
);
$invoice = array (
"invoice"=> 34843,
"date"=> 980208000,
"bill-to"=> $addr,
"ship-to"=> $addr,
"product"=> array(
array(
"sku"=> "BL394D",
"quantity"=> 4,
"description"=> "Basketball",
"price"=> 450,
),
array(
"sku"=> "BL4438H",
"quantity"=> 1,
"description"=> "Super Hoop",
"price"=> 2392,
),
),
"tax"=> 251.42,
"total"=> 4443.52,
"comments"=> "Late afternoon is best. Backup contact is Nancy Billsmer @ 338-4338.",
);
var_dump(yaml_emit($invoice));
?>
Результатом выполнения данного примера будет что-то подобное:
string(628) "--- invoice: 34843 date: 980208000 bill-to: given: Chris family: Dumars address: lines: |- 458 Walkman Dr. Suite #292 city: Royal Oak state: MI postal: 48046 ship-to: given: Chris family: Dumars address: lines: |- 458 Walkman Dr. Suite #292 city: Royal Oak state: MI postal: 48046 product: - sku: BL394D quantity: 4 description: Basketball price: 450 - sku: BL4438H quantity: 1 description: Super Hoop price: 2392 tax: 251.420000 total: 4443.520000 comments: Late afternoon is best. Backup contact is Nancy Billsmer @ 338-4338. ... "