略微加速

PHP官方手册 - 互联网笔记

PHP - Manual: Parse callbacks

2024-05-02

Parse callbacks

Parse callables are invoked by yaml_parse(), yaml_parse_file() or yaml_parse_url() functions when a registered YAML tag is encountered. The callback is passed the tagged entity's value, the tag, and flags indicating the scalar entity style. The callback must return the data that the YAML parser should emit for this entity.

示例 #1 Parse callback example

<?php
/**
 * Parsing callback for yaml tag.
 * @param mixed $value Data from yaml file
 * @param string $tag Tag that triggered callback
 * @param int $flags Scalar entity style (see YAML_*_SCALAR_STYLE)
 * @return mixed Value that YAML parser should emit for the given value
 */
function tag_callback ($value$tag$flags) {
  
var_dump(func_get_args()); // debugging
  
return "Hello {$value}";
}

$yaml = <<<YAML
greeting: !example/hello World
YAML;

$result yaml_parse($yaml0$ndocs, array(
    
'!example/hello' => 'tag_callback',
  ));

var_dump($result);
?>

以上例程的输出类似于:

array(3) {
  [0]=>
  string(5) "World"
  [1]=>
  string(14) "!example/hello"
  [2]=>
  int(1)
}
array(1) {
  ["greeting"]=>
  string(11) "Hello World"
}
add a noteadd a note

User Contributed Notes

There are no user contributed notes for this page.

官方地址:https://www.php.net/manual/en/yaml.callbacks.parse.php

北京半月雨文化科技有限公司.版权所有 京ICP备12026184号-3