| 1 |
lars |
1 |
--TEST--
|
|
|
2 |
XML_Query2XML::_applyColumnStringToRecord(): check for XML_Query2XML_ConfigException - non-existing column used as idColumn
|
|
|
3 |
--SKIPIF--
|
|
|
4 |
<?php require_once dirname(dirname(__FILE__)) . '/skipif.php'; ?>
|
|
|
5 |
--FILE--
|
|
|
6 |
<?php
|
|
|
7 |
require_once 'XML/Query2XML.php';
|
|
|
8 |
require_once dirname(dirname(__FILE__)) . '/db_init.php';
|
|
|
9 |
|
|
|
10 |
$query2xml =& XML_Query2XML::factory($db);
|
|
|
11 |
$dom = $query2xml->getXML(
|
|
|
12 |
"SELECT
|
|
|
13 |
*
|
|
|
14 |
FROM
|
|
|
15 |
artist
|
|
|
16 |
ORDER BY
|
|
|
17 |
artistid",
|
|
|
18 |
array(
|
|
|
19 |
'rootTag' => 'music_library',
|
|
|
20 |
'rowTag' => 'artist',
|
|
|
21 |
'idColumn' => 'artistid',
|
|
|
22 |
'elements' => array(
|
|
|
23 |
'artistid',
|
|
|
24 |
'name' => '#uppercaseName',
|
|
|
25 |
'name2' => '#uppercaseName()',
|
|
|
26 |
'name3' => '#uppercase(name)',
|
|
|
27 |
'name4' => '#prefixNameWithUnderscore',
|
|
|
28 |
'name5' => '#prefixNameWithUnderscore()',
|
|
|
29 |
'name6' => '#prefixWithUnderscore(name)',
|
|
|
30 |
'name7' => '#prefixNameWith(_)',
|
|
|
31 |
'name8' => '#prefixWith(name, _)',
|
|
|
32 |
'name9' => '#Callbacks::prefixNameWithUnderscore',
|
|
|
33 |
'name10' => '#Callbacks::prefixNameWithUnderscore()',
|
|
|
34 |
'name11' => '#Callbacks::prefixWithUnderscore(name)',
|
|
|
35 |
'name12' => '#Callbacks::prefixNameWith(_)',
|
|
|
36 |
'name13' => '#Callbacks::prefixWith(name, _)',
|
|
|
37 |
)
|
|
|
38 |
)
|
|
|
39 |
);
|
|
|
40 |
print $dom->saveXML();
|
|
|
41 |
|
|
|
42 |
function uppercaseName($record)
|
|
|
43 |
{
|
|
|
44 |
return strtoupper($record['name']);
|
|
|
45 |
}
|
|
|
46 |
|
|
|
47 |
function uppercase($record, $columnName)
|
|
|
48 |
{
|
|
|
49 |
return strtoupper($record[$columnName]);
|
|
|
50 |
}
|
|
|
51 |
|
|
|
52 |
function prefixNameWithUnderscore($record)
|
|
|
53 |
{
|
|
|
54 |
return '_' . $record['name'];
|
|
|
55 |
}
|
|
|
56 |
|
|
|
57 |
function prefixWithUnderscore($record, $columnName)
|
|
|
58 |
{
|
|
|
59 |
return '_' . $record[$columnName];
|
|
|
60 |
}
|
|
|
61 |
|
|
|
62 |
function prefixNameWith($record, $with)
|
|
|
63 |
{
|
|
|
64 |
return $with . $record['name'];
|
|
|
65 |
}
|
|
|
66 |
|
|
|
67 |
function prefixWith($record, $columnName, $with)
|
|
|
68 |
{
|
|
|
69 |
return $with . $record[$columnName];
|
|
|
70 |
}
|
|
|
71 |
|
|
|
72 |
class Callbacks
|
|
|
73 |
{
|
|
|
74 |
function prefixNameWithUnderscore($record)
|
|
|
75 |
{
|
|
|
76 |
return '_' . $record['name'];
|
|
|
77 |
}
|
|
|
78 |
|
|
|
79 |
function prefixWithUnderscore($record, $columnName)
|
|
|
80 |
{
|
|
|
81 |
return '_' . $record[$columnName];
|
|
|
82 |
}
|
|
|
83 |
|
|
|
84 |
function prefixNameWith($record, $with)
|
|
|
85 |
{
|
|
|
86 |
return $with . $record['name'];
|
|
|
87 |
}
|
|
|
88 |
|
|
|
89 |
function prefixWith($record, $columnName, $with)
|
|
|
90 |
{
|
|
|
91 |
return $with . $record[$columnName];
|
|
|
92 |
}
|
|
|
93 |
}
|
|
|
94 |
?>
|
|
|
95 |
--EXPECT--
|
|
|
96 |
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
97 |
<music_library><artist><artistid>1</artistid><name>CURTIS MAYFIELD</name><name2>CURTIS MAYFIELD</name2><name3>CURTIS MAYFIELD</name3><name4>_Curtis Mayfield</name4><name5>_Curtis Mayfield</name5><name6>_Curtis Mayfield</name6><name7>_Curtis Mayfield</name7><name8>_Curtis Mayfield</name8><name9>_Curtis Mayfield</name9><name10>_Curtis Mayfield</name10><name11>_Curtis Mayfield</name11><name12>_Curtis Mayfield</name12><name13>_Curtis Mayfield</name13></artist><artist><artistid>2</artistid><name>ISAAC HAYES</name><name2>ISAAC HAYES</name2><name3>ISAAC HAYES</name3><name4>_Isaac Hayes</name4><name5>_Isaac Hayes</name5><name6>_Isaac Hayes</name6><name7>_Isaac Hayes</name7><name8>_Isaac Hayes</name8><name9>_Isaac Hayes</name9><name10>_Isaac Hayes</name10><name11>_Isaac Hayes</name11><name12>_Isaac Hayes</name12><name13>_Isaac Hayes</name13></artist><artist><artistid>3</artistid><name>RAY CHARLES</name><name2>RAY CHARLES</name2><name3>RAY CHARLES</name3><name4>_Ray Charles</name4><name5>_Ray Charles</name5><name6>_Ray Charles</name6><name7>_Ray Charles</name7><name8>_Ray Charles</name8><name9>_Ray Charles</name9><name10>_Ray Charles</name10><name11>_Ray Charles</name11><name12>_Ray Charles</name12><name13>_Ray Charles</name13></artist></music_library>
|