Пример #1
0
     $newnode = $doc->createElement($key, $val);
     $doc->appendChild($newnode);
     $add = $doc->getElementsByTagName('PROBLEM')->item(0);
     $add->appendChild($newnode);
     break;
     //********************************** SET_OF_SOLUTIONS *************************************
 //********************************** SET_OF_SOLUTIONS *************************************
 case $key == 'pattern_solution_name':
     $newnode = $doc->createElement($key, $val);
     $doc->appendChild($newnode);
     $add = $doc->getElementsByTagName('SET_OF_SOLUTIONS')->item(0);
     $add->appendChild($newnode);
     break;
 case $key == 'objectives':
     $newnode = $doc->createElement($key);
     $noeud = $doc->createTextNode($val);
     $doc->appendChild($newnode);
     $add = $doc->getElementsByTagName('SET_OF_SOLUTIONS')->item(0);
     $add->appendChild($newnode);
     break;
 case $key == 'pattern_indicators':
     $newnode = $doc->createElement($key, $val);
     $doc->appendChild($newnode);
     $add = $doc->getElementsByTagName('SET_OF_SOLUTIONS')->item(0);
     $add->appendChild($newnode);
     break;
 case $key == 'pattern_methods':
     $newnode = $doc->createElement($key, $val);
     $doc->appendChild($newnode);
     $add = $doc->getElementsByTagName('SET_OF_SOLUTIONS')->item(0);
     $add->appendChild($newnode);
Пример #2
0
<?php

$dom = new domDocument('1.0');
$dom->formatOutput = true;
// make output be nicely formatted
$root = $dom->createElement('root');
// create new element
foreach (array('foo', 'bar', 'baz') as $v) {
    $node = $dom->createElement($v);
    // create new sub-element
    $node->appendChild($dom->createTextNode($v));
    // add value to element
    $root->appendChild($node);
    // append sub-element to root element
}
$dom->appendChild($root);
// add root node to document
$xml = $dom->saveXML();
// output XML
echo nl2br(htmlspecialchars($xml));
Пример #3
0
$doctype = $domimp->createDocumentType('asortiment[<!ENTITY y1 "2009"> <!ENTITY y2 "2010">]');
$document->appendChild($doctype);
$asortiment = $document->createElementNS("http://mysite.ru", "asort:asortiment");
$document->appendChild($asortiment);
$telefon = $document->createElement("asort:telefon");
$asortiment->appendChild($telefon);
$attr = $document->createAttribute("number");
$attr->nodeValue = 1;
$telefon->appendChild($attr);
$cdata = $document->createCDATASection("Это контент нашего интернет магазина");
$telefon->appendChild($cdata);
$model_1 = $document->createElement("model");
$telefon->appendChild($model_1);
$name_1 = $document->createElement("name");
$model_1->appendChild($name_1);
$textN_1 = $document->createTextNode("Samsung Galaxi");
$name_1->appendChild($textN_1);
$year_1 = $document->createElement("year");
$model_1->appendChild($year_1);
$textY_1 = $document->createTextNode('2009');
$year_1->appendChild($textY_1);
$model_2 = $document->createElement("model");
$telefon->appendChild($model_2);
$name_2 = $document->createElement("name");
$model_2->appendChild($name_2);
$textN_2 = $document->createTextNode("Nokia Lumia");
$name_2->appendChild($textN_2);
$year_2 = $document->createElement("year");
$model_2->appendChild($year_2);
$textY_2 = $document->createTextNode('2010');
$year_2->appendChild($textY_2);
Пример #4
0
 /**
  *
  * @get text between tags
  * @param string $tag The tag name
  * @param string $html The XML or XHTML string
  * @param int $strict Whether to use strict mode
  * @param string $encoding
  * @return array
  */
 private function getTextBetweenTags($tag, $html, $strict = 0, $encoding = "UTF-8")
 {
     global $PAGE, $CFG;
     if (!isset($CFG->filter_jsxgraph_divid)) {
         set_config('filter_jsxgraph_divid', 'box');
     }
     if (!isset($CFG->filter_jsxgraph_boardvar)) {
         set_config('filter_jsxgraph_boardvar', 'board');
     }
     if (!isset($CFG->filter_jsxgraph_width)) {
         set_config('filter_jsxgraph_width', '500');
     }
     if (!isset($CFG->filter_jsxgraph_height)) {
         set_config('filter_jsxgraph_height', '400');
     }
     // a new dom object
     $dom = new domDocument();
     $dom->formatOutput = true;
     // load the html into the object
     if ($strict == 1) {
         $dom->loadXML($html);
     } else {
         libxml_use_internal_errors(true);
         $htmlutf8 = mb_convert_encoding($html, 'HTML-ENTITIES', $encoding);
         $dom->loadHTML($htmlutf8);
         libxml_use_internal_errors(false);
     }
     // discard white space
     $dom->preserveWhiteSpace = false;
     $dom->strictErrorChecking = false;
     $dom->recover = true;
     // the tag by its tag name
     $content = $dom->getElementsByTagname($tag);
     if (count($content) > 0) {
         $PAGE->requires->js(new moodle_url($CFG->wwwroot . '/filter/jsxgraph/jsxgraphcore.js'));
     }
     // Iterate backwards through the jsxgraph tags
     $i = $content->length - 1;
     while ($i > -1) {
         $item = $content->item($i);
         // Read attributes
         $w = $item->getAttribute('width');
         if ($w == "") {
             $w = $CFG->filter_jsxgraph_width;
         }
         $h = $item->getAttribute('height');
         if ($h == "") {
             $h = $CFG->filter_jsxgraph_height;
         }
         $b = $item->getAttribute('box');
         if ($b == "") {
             $b = $CFG->filter_jsxgraph_divid . $i;
         }
         $brd = $item->getAttribute('board');
         if ($brd == "") {
             $brd = $CFG->filter_jsxgraph_boardvar . $i;
         }
         /* Create new div element containing JSXGraph */
         $out = $dom->createElement('div');
         $a = $dom->createAttribute('id');
         $a->value = $b;
         $out->appendChild($a);
         $a = $dom->createAttribute('class');
         $a->value = "jxgbox";
         $out->appendChild($a);
         $a = $dom->createAttribute('style');
         $a->value = "width:" . $w . "px; height:" . $h . "px; ";
         $out->appendChild($a);
         $t = $dom->createTextNode("");
         $out->appendChild($t);
         $out = $dom->appendChild($out);
         // Replace <jsxgraph> by <div>
         $item->parentNode->replaceChild($out, $item);
         $code = "";
         $needGXT = false;
         $url = $item->getAttribute('file');
         if ($url != "") {
             $code = "var " . $brd . " = JXG.JSXGraph.loadBoardFromFile('" . $b . "', '" . $url . "', 'Geonext');";
             $needGXT = true;
         } else {
             $url = $item->getAttribute('filestring');
             if ($url != "") {
                 $code = "var " . $brd . " = JXG.JSXGraph.loadBoardFromString('" . $b . "', '" . $url . "', 'Geonext');";
                 $needGXT = true;
             } else {
                 // Plain JavaScript code
                 $code = $item->nodeValue;
             }
         }
         // Place JavaScript code at the end of the page.
         $PAGE->requires->js_init_call($code);
         if ($needGXT) {
             $PAGE->requires->js(new moodle_url($CFG->wwwroot . '/filter/jsxgraph/GeonextReader.js'));
         }
         --$i;
     }
     // remove DOCTYPE
     $dom->removeChild($dom->firstChild);
     // remove <html><body></body></html>
     //$dom->replaceChild($dom->firstChild->firstChild->firstChild, $dom->firstChild);
     //return $dom->saveXML();
     $str = $dom->saveHTML();
     $str = str_replace("<body>", "", $str);
     $str = str_replace("</body>", "", $str);
     $str = str_replace("<html>", "", $str);
     $str = str_replace("</html>", "", $str);
     return $str;
 }
Пример #5
0
\t<userburo>
\t</userburo>
</bureau>
XML;
$dom = new domDocument();
$dom->loadXML($xmlPrefs);
if (!$dom) {
    echo 'Erreur de traitement XML';
    exit;
}
$frstN = array("wallpaper", "pos_wallpaper", "iconsize", "iconsfield", "bgcolor", "quicklaunch", "s_idart", "winsize", "data");
$liste = $dom->getElementsByTagName('userburo');
$neud = $liste->item(0);
foreach ($frstN as $thisN) {
    ${$thisN} = $dom->createElement($thisN);
    ${$thisN}->appendChild($dom->createTextNode($_POST[$thisN]));
    $neud->appendChild(${$thisN});
}
foreach ($_POST['icons'] as $k => $val) {
    $noeud = $liste->item(0);
    $node = $dom->createElement("icon");
    foreach ($val as $k1 => $val1) {
        $icon_x = $dom->createElement($k1, $val1);
        $node->appendchild($icon_x);
    }
    $noeud->appendChild($node);
}
$s = simplexml_import_dom($dom);
// ecriture du fichier
$filexml = 'PREFS_' . $login . '.xml';
file_put_contents('/home/' . $login . '/Profile/' . $filexml, $s->asxml());
echo $element_2->nodeValue . "<br/>";
echo "---------------------------------------*<br/>";
$attr_1 = $document->createAttribute("attr_1");
$attr_1->nodeValue = 20;
$attr_2 = new domAttr("attr_2", 64);
echo $attr_1->nodeName . "<br>";
echo $attr_2->nodeName . "<br>";
echo $attr_1->nodeValue . "<br/>";
echo $attr_2->nodeValue . "<br/>";
echo "---------------------------------------*<br/>";
$cdata_1 = $document->createCdataSection("Section CDATA 1");
$cdata_2 = new domCdataSection("Section CDATA 2");
echo $cdata_1->nodeValue . "<br/>";
echo $cdata_2->nodeValue . "<br/>";
echo "---------------------------------------*<br/>";
$text_1 = $document->createTextNode("Text Node 1");
$text_2 = new domText("Text Node 2");
echo $text_1->nodeValue . "<br/>";
echo $text_2->nodeValue . "<br/>";
echo "---------------------------------------*<br/>";
$comment_1 = $document->createComment("Comment 1");
$comment_2 = new domComment("Comment 2");
echo $comment_1->nodeValue . "<br/>";
echo $comment_2->nodeValue . "<br/>";
echo "<br/>*---------------------------------------*<br/><br/>";
$comment = $document->createComment("This is document");
$document->appendChild($comment);
$root = $document->createElement("root");
$document->appendChild($root);
$element1 = $document->createElement("el1");
$element2 = $document->createElement("el2");