Доступ к атрибутам c в XML с использованием PHP - PullRequest
0 голосов
/ 17 апреля 2020

Я пытаюсь обновить атрибут узла XML SVG (я думаю). Моя цель - прочитать данные из таблицы sql и с помощью php обновить мои страницы xml (svg), используя выбранный параметр, и заново отобразить изображение. Вот мой XML:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:cc="http://creativecommons.org/ns#"
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:svg="http://www.w3.org/2000/svg"
   xmlns="http://www.w3.org/2000/svg"
   id="svg5008"
   version="1.1"
   viewBox="0 0 210 297"
   height="197mm"
   width="210mm">
  <defs
     id="defs5002" />
  <metadata
     id="metadata5005">
    <rdf:RDF>
      <cc:Work
         rdf:about="">
        <dc:format>image/svg+xml</dc:format>
        <dc:type
           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
        <dc:title></dc:title>
      </cc:Work>
    </rdf:RDF>
  </metadata>
  <g id="layer1">
    <path
       id="path5018"
       d="M
          100,
          650 
        C
        105,
        250,
        130,
        119,
        66,
        115"



       style="fill:none;
              stroke:#16892D;
              stroke-width:2.0;
              stroke-linecap:butt;
              stroke-linejoin:miter;
              stroke-opacity:1;
              stroke-miterlimit:4;
              stroke-dasharray:none" />

    <ellipse
       ry="56.2853556"
       rx="15.501633"
       cy="114.98945"
       cx="53.453903"
       id="path5569"
       style="opacity:0;
              fill:#B21111;
              stroke-width:1.26499999;
              stroke-miterlimit:14;
              stroke-dasharray:none;
              stroke-dashoffset:0" />

    <path
       d="m 67.351919,139.57826 a 1.3363476,36.615925 0 0 1 -2.9e-5,0.24024 l -1.336318,-0.24024 z"
       id="path5571"
       style="opacity:0;
       fill:#00A1FF;
       stroke-width:1.26499999;
       stroke-miterlimit:4;
       stroke-dasharray:none;
       stroke-dashoffset:0" />

    <path
       d="m 66.015572,141.58278 a 19.911579,2.0045145 0 0 1 -4.29e-4,0.0131 l -19.911151,-0.0131 z"
       id="path5573"
       style="opacity:0;
       fill:#D81111;
       stroke-width:1.26499999;
       stroke-miterlimit:4;
       stroke-dasharray:none;
       stroke-dashoffset:0" />
  </g>
</svg>

Я пытаюсь обновить эту строку «M 100, 650» другими номерами, такими как «M 150, 720» и сохранить xml. Однако я не могу понять, как получить доступ к этим данным и обновить их. Если это поможет, мой псевдо код будет выглядеть примерно так:

if($number_from_database > 10){
$myDOMDocument->getElementByName("path id 5018") = "d = M 150, 720";
$myDOMDocument->save();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...