Las emisiones de callbacks son invocadas cuando una instancia de una clase registrada es
   emitida por la función yaml_emit() o la función
   yaml_emit_file(). El callback se pasa al objeto a
   ser emitido. El callback debe devolver un array que contenga dos claves:
   "tag" y "data".
   El valor asociado con la clave "tag" debe
   ser un string a ser usado como la etiqueta YAML en la salida. El valor asociado
   con la clave "data" será encodeado como YAML
   y será emitido en lugar del objeto interceptado.
  
Ejemplo #1 Ejemplo de emisión de callback
<?php
class EmitExample {
  public $data;    // los datos podrían ser ajustables en cualquier tipo de pecl/yaml
  public function __construct ($d) {
    $this->data = $d;
  }
  /**
   * Yaml emite la función de callback, referida a la llamada yaml_emit por el nombre de la clase.
   *
   * Se espera que devuelva un array con 2 valores:
   *   - 'tag': etiqueta personalizada para esta serialización
   *   - 'data': valor que se convierte a yaml (ya sea array, string, bool, número)
   *
   * @param object $obj Objeto a ser emitido
   * @return array Etiqueta y datos sustitutivos a emitir
   */
  public static function yamlEmit (EmitExample $obj) {
    return array(
      'tag' => '!example/emit',
      'data' => $obj->data,
    );
  }
}
$emit_callbacks = array(
  'EmitExample' => array('EmitExample', 'yamlEmit')
);
$t = new EmitExample(array('a','b','c'));
$yaml = yaml_emit(
  array(
    'example' => $t,
  ),
  YAML_ANY_ENCODING,
  YAML_ANY_BREAK,
  $emit_callbacks
);
var_dump($yaml);
?>Resultado del ejemplo anterior es similar a:
string(43) "--- example: !example/emit - a - b - c ... "
