我有一個xml文件,我正在重寫其中的一部分,並且我需要用每個str_replace增加一個毫秒(或秒)的時間戳。我找到了用於遞增的教程,併爲時間戳添加了第二個教程,但不是在循環或每個替換實例期間添加時間。是否有可能增加str_replace中的時間戳?
我更換代碼如下所示:
$data = str_replace("</tag1><tag2>", "</tag1><myDate>".date(DATE_ATOM)."</myDate><tag2>", $data);
(澄清,上面有該文件中的模式的多個實例)
的是作品的替代品,但無法弄清楚如何在每次出現時向日期字符串添加毫秒或秒,因此它們都是唯一的。
謝謝!
UPDATE:
感謝vascowhite指着我在正確的方向,我不得不這樣一些DOM操作相結合,但它的工程!這是解決方案,對於那些想知道:
$domsrc = file_get_contents("output.xml");
$MYdom = new DomDocument();
$MYdom->loadXML($domsrc);
$date = new DateTime();
$oneSecond = new DateInterval('PT1S');
$descriptions = $MYdom->getElementsByTagName('myDate');
foreach($descriptions as $nodeDesciption)
{
$nodeDesciption->nodeValue = $date->format(DATE_ATOM);
$date->add($oneSecond);
}
$MYdom->save("DOMoutput.xml");
我已經搜遍了網絡,找不到處理這兩件事情的任何地方(str_replace和TIME遞增)。我可以找到一個或另一個,但增加解決方案不處理時間。 :( – Stephen