Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何从发布的数据向XML文档添加XML标记?_Php_Xml_Xml Parsing - Fatal编程技术网

Php 如何从发布的数据向XML文档添加XML标记?

Php 如何从发布的数据向XML文档添加XML标记?,php,xml,xml-parsing,Php,Xml,Xml Parsing,我正在尝试编写一个基于web的数据可视化应用程序,它允许用户加载txt文件,将其自动转换为xml,在屏幕上查看,右键单击文本,并为所选单词的所有计数分配一个标记 当前,右键单击后,我将传递给PHP处理程序:要添加的元素名、要添加的属性名、要添加的值、文件名和所选单词。我在处理程序中提供了所有这些,但经过几个小时的搜索,我无法找到如何将标记元素/属性/值添加到XML文件中的选定单词中 php文件 getName()); foreach($sxml->children()作为$child){ 数组推

我正在尝试编写一个基于web的数据可视化应用程序,它允许用户加载txt文件,将其自动转换为xml,在屏幕上查看,右键单击文本,并为所选单词的所有计数分配一个标记

当前,右键单击后,我将传递给PHP处理程序:要添加的元素名、要添加的属性名、要添加的值、文件名和所选单词。我在处理程序中提供了所有这些,但经过几个小时的搜索,我无法找到如何将标记元素/属性/值添加到XML文件中的选定单词中

php文件

getName());
foreach($sxml->children()作为$child){
数组推送($docElements,$child->getName());
}
if(在数组中($element,$docElements,true)){
回声:“它在那儿!”;
}否则{
回声:“它不在那儿!”;
$result=$sxml->xpath($element);
打印(结果);
//$sxe=新的simplexmlement($element);
//$sxe->addAttribute($attribute,$selection)
}
?php>;
xml文件

;
李维安是一个儿子
奎特尔选择了一个叫洛安的小人
我是一个年轻人
这是我的梦想
请给我一杯酒,让我来
卡奎森·埃斯泰德·安特拉伊特
托斯特·普埃特·泰西尔

@u\u mulder分号不应该在那里,这是在粘贴过程中发生的;我现在刚把它们取下来。箭头是SimpleXML的对象函数。有什么不适用于此代码?@u_mulder此代码只输出xml文档中的元素。我不知道如何迭代xml文档中的单词,以找到与用户选择匹配的单词,以便在中编写xml标记。
<?php

$target_dir = "../UserFiles/Files/";

//$filename = $_POST["filename"];

$filename = "Chretien 1 Erec";

//$element = $_POST["element"];

$element = "Emotion";

//$attribute = $_POST["attribute"];

$attribute = "Type";

//$value = $_POST["value"];

$value = "Positive";

//$selection = $_POST["selection"];

$selection = "vilains";

$target_file = $target_dir . $filename . ".xml";

//if(isset($_POST["submit"])) {

  $xml = file_get_contents($target_file);  

  $sxml = simplexml_load_string($xml);  

  //get current xml elements

  $docElements = [];

  array_push($docElements, $sxml->getName());

  foreach ($sxml->children() as $child){

      array_push($docElements, $child->getName());

  }

  if (in_array($element, $docElements, true)) {

    echo "It's there!";

  } else {

    echo "It's not there!";

    $result = $sxml->xpath($element);

    print_r($result);

    //$sxe = new SimpleXMLElement($element);

    //$sxe->addAttribute($attribute, $selection)

  }

?php>;
<?xml version="1.0"?>;

<LiteraryWork Author="Chretian" Title="Erec" Type="Romance">

 Li vilains dit an son respit

que tel chose a l'an an despit

qui mout valt mialz que l'an ne cuide

por ce fet bien qui son estuide

atorne a bien, quel que il l'ait

car qui son estuide antrelait

tost i puet tel chose teisir

<LiteraryWork>