public function xml() { $bool = false; $result = new \org\rhaco\Xml('summary'); $result->escape(true); foreach ($this->props() as $name => $value) { if (!empty($value)) { $bool = true; switch ($name) { case 'type': $result->attr($name, $value); break; case 'lang': $result->attr('xml:' . $name, $value); break; case 'value': $result->value($value); break; } } } if (!$bool) { throw new \org\rhaco\net\xml\atom\NotfoundException(); } return $result; }
$x->rm_attr("def"); eq(array("abc" => 123, "ghi" => 789), iterator_to_array($x)); $x->attr("def", 456); eq(array("abc" => 123, "ghi" => 789, "def" => 456), iterator_to_array($x)); $x->rm_attr("abc", "ghi"); eq(array("def" => 456), iterator_to_array($x)); $x = new \org\rhaco\Xml("test"); eq(false, $x->is_attr("abc")); $x->attr("abc", 123); eq(true, $x->is_attr("abc")); $x->attr("abc", null); eq(true, $x->is_attr("abc")); $x->rm_attr("abc"); eq(false, $x->is_attr("abc")); $x = new \org\rhaco\Xml("test"); $x->escape(true); $x->attr("abc", 123); eq(123, $x->in_attr("abc")); $x->attr("Abc", 456); eq(456, $x->in_attr("abc")); $x->attr("DEf", 555); eq(555, $x->in_attr("def")); eq(456, $x->in_attr("abc")); $x->attr("Abc", "<aaa>"); eq("<aaa>", $x->in_attr("abc")); $x->attr("Abc", true); eq("true", $x->in_attr("abc")); $x->attr("Abc", false); eq("false", $x->in_attr("abc")); $x->attr("Abc", null); eq(null, $x->in_attr("abc"));
<?php $xml = new \org\rhaco\Xml("test"); eq("hoge", $xml->value("hoge")); eq("true", $xml->value(true)); eq("false", $xml->value(false)); eq("<abc>1</abc><def>2</def><ghi>3</ghi>", $xml->value(array("abc" => 1, "def" => 2, "ghi" => 3))); eq(null, $xml->value('')); eq(1, $xml->value('1')); eq(null, $xml->value(null)); $xml->escape(true); eq("<abc>123</abc>", $xml->value("<abc>123</abc>")); eq("<b>123</b>", $xml->value(new \org\rhaco\Xml("b", "123"))); $xml = new \org\rhaco\Xml("test"); $xml->escape(false); eq("<abc>123</abc>", $xml->value("<abc>123</abc>", false)); $obj = new \org\rhaco\Request(); $obj->rm_vars(); $obj->vars('aaa', 'hoge'); $obj->vars('ccc', 123); $xml = new \org\rhaco\Xml('abc', $obj); eq('<abc><aaa>hoge</aaa><ccc>123</ccc></abc>', $xml->get()); $xml = new \org\rhaco\Xml("test"); $add = new \org\rhaco\Xml("addxml", "hoge"); $xml->add($add); $xml->add($add->get()); $xml->add((string) $add); eq('<test><addxml>hoge</addxml><![CDATA[<addxml>hoge</addxml>]]><![CDATA[<addxml>hoge</addxml>]]></test>', $xml->get()); $xml = new \org\rhaco\Xml("test"); $add = new \org\rhaco\Xml("addxml", "hoge"); $xml->add($add);