首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

yaml_emit

(PECL yaml >= 0.5.0)

yaml_emit — Returns the YAML representation of a value

Description

代码语言:javascript
复制
string yaml_emit ( mixed $data [, int $encoding = YAML_ANY_ENCODING [, int $linebreak = YAML_ANY_BREAK [, array $callbacks = null ]]] )

Generate a YAML representation of the provided data.

Parameters

data

The data being encoded. Can be any type except a resource.

encoding

Output character encoding chosen from YAML_ANY_ENCODING, YAML_UTF8_ENCODING, YAML_UTF16LE_ENCODING, YAML_UTF16BE_ENCODING.

linebreak

Output linebreak style chosen from YAML_ANY_BREAK, YAML_CR_BREAK, YAML_LN_BREAK, YAML_CRLN_BREAK.

callbacks

Content handlers for emitting YAML nodes. Associative array of classname => callable mappings. See emit callbacks for more details.

Return Values

Returns a YAML encoded string on success.

Changelog

Version

Description

1.1.0

The callbacks parameter was added.

Examples

Example #1 yaml_emit() example

代码语言:javascript
复制
<?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));
?>

The above example will output something similar to:

代码语言:javascript
复制
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.
...
"

See Also

  • yaml_emit_file() - Send the YAML representation of a value to a file
  • yaml_parse() - Parse a YAML stream

← yaml_emit_file

yaml_parse_file →

代码语言:txt
复制
 ? 1997–2017 The PHP Documentation Group

Licensed under the Creative Commons Attribution License v3.0 or later.

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com