Subversion-Projekte lars-tiefland.php_share

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
1 lars 1
--TEST--
2
XML_Query2XML::_executeEncoder(): non-static encoder method
3
--SKIPIF--
4
<?php require_once dirname(dirname(__FILE__)) . '/skipif.php'; ?>
5
--FILE--
6
<?php
7
    class MyClass
8
    {
9
        function myEncoder($str)
10
        {
11
            return utf8_encode($str);
12
        }
13
    }
14
 
15
    require_once 'XML/Query2XML.php';
16
    require_once dirname(dirname(__FILE__)) . '/db_init.php';
17
    $query2xml =& XML_Query2XML::factory($db);
18
    $dom =& $query2xml->getXML(
19
        "SELECT
20
            artistid,
21
            '" . utf8_encode('Père Noël') . "' AS name,
22
            '" . 'Père Noël' . "' AS name2
23
         FROM
24
            artist",
25
        array(
26
            'rootTag' => 'xmas',
27
            'rowTag' => 'CEO',
28
            'encoder' => array(new MyClass(), 'myEncoder'),
29
            'idColumn' => 'artistid',
30
            'elements' => array(
31
                'name',
32
                'name2'
33
            )
34
        )
35
    );
36
    $items = $dom->getElementsByTagName('name');
37
    for ($i = 0; $i < $items->length; $i++) {
38
        echo $items->item($i)->nodeValue === utf8_encode(utf8_encode('Père Noël')) ? "Y" : "N";
39
    }
40
 
41
    $items = $dom->getElementsByTagName('name2');
42
    for ($i = 0; $i < $items->length; $i++) {
43
        echo $items->item($i)->nodeValue === utf8_encode('Père Noël') ? "Y" : "N";
44
    }
45
 
46
    echo "\n";
47
 
48
    $dom->formatOutput = true;
49
    print $dom->saveXML();
50
?>
51
--EXPECT--
52
YYYYYY
53
<?xml version="1.0" encoding="UTF-8"?>
54
<xmas>
55
  <CEO>
56
    <name>Père Noël</name>
57
    <name2>Père Noël</name2>
58
  </CEO>
59
  <CEO>
60
    <name>Père Noël</name>
61
    <name2>Père Noël</name2>
62
  </CEO>
63
  <CEO>
64
    <name>Père Noël</name>
65
    <name2>Père Noël</name2>
66
  </CEO>
67
</xmas>