©
This document uses PHP Chinese website manual Release
Parse callbacks 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.
Example #1 Parse callback example
<?php
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 ( $yaml , 0 , $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" }