PHP関数に慣れようとしていますSimpleXML
が、少し助けていただければ幸いです。コール センターの受信通話の更新を取得し、現在の日付からの新しい受信通話のみを結合文字列に追加しています。cronjob を介して 10 分ごとにこれを実行し、結合された文字列を 1 日かけて成長させる必要があります。
これが私がXML
働いているものです:
<?xml version="1.0" encoding="ISO-8859-1"?>
<received>
<call>
<countryCode>46</countryCode>
<phoneNumber>4386541313</phoneNumber>
<name>Unavailable</name>
<time>2012-12-05T08:41:29.863Z</time>
</call>
...
</received>
私がやりたいことは、ループですべてphoneNumber
のtime
要素を抽出しforeach
、それらを文字列としてコンマ区切りの文字列に追加することです。
文字列は次のようになります。
From the above xml example 4386541313-2012-12-05T08:41:29.863Z
Or phoneNumber-time
コンマ区切りの文字列は次のようになります。
4386541313-2012-12-05T08:41:29.863Z,1186111311-2012-12-03T08:11:21.561Z,...
しかし、現在の日付からの文字列をカンマ区切りのリストIF
に追加したいだけです。timestamp
これが私が持っているものですが、それほど多くはなく、これが私が望むことを行うための最良の方法であるかどうかはわかりません:
$date_today = date('Y-m-d');
$combined_string = "4386541313-2012-12-05T08:41:29.863Z,1186111311-2012-12-03T08:11:21.561Z";
$received = simplexml_load_file('thexmlfile.xml');
foreach ($received->call->phoneNumber as $phoneNumber) {
foreach ($received->call->time as $time) {
$new_call = $phoneNumber."-".$time;
if(strpos($new_call,$date_today) !== false)
{
$combined_string = $new_call.",".$combined_string;
}
}
}
上記は、エラーのない空白のページを返します。