这个问题是从这里开始的上一个问题的延伸。
XML解析错误-文档末尾的额外内容
我添加了一段代码来列出姓名和电话号码…
if(isset(${'Action'}) && ${'Action Type'}){
if(${'Action'} == 'get'){
if(${'Limit'} != ''){
$limit = ' LIMIT '.${'Limit'}.'';
} else {
$limit = '';
}
$i = 1;
${'Response'}['numbers'] = array();
${'Query'} = mysql_query('SELECT * FROM `crm`.`accounts` WHERE `acquired_via` = "Scrubbed account" AND `sent_to_dialer` = "0"'.$limit);
while(${'Row'} = mysql_fetch_assoc(${'Query'})){
${'Response'}['numbers']['number_'.$i] = array('Company_Name' => ${'Row'}['company_name'], 'Contact_First_Name' => ${'Row'}['contact_fname'], 'Contact_Last_Name' => ${'Row'}['contact_lname'], 'Office_Phone' => removeCHARSphone(${'Row'}['office_phone']), 'Mobile_Phone' => removeCHARSphone(${'Row'}['mobile_phone']));
$i++;
}
}elseif(${'Action'} == 'details'){
}
}
这会破坏XML
http://lmsapi.com/?api_key=b3e04e54f0d92f8845d394b61c607d60&行动= get& format = xmlhttp://lmsapi.com/?api_key=b3e04e54f0d92f8845d394b61c607d60&行动= get&格式= json
您需要转义XML内容中的所有与号和尖括号。
所以&
应该变成&
, <
应该变成<
, >
应该变成>
。
str_replace
调用,像这样:
$string = str_replace(
array('&', '<', '>'),
array('&', '<', '>'),
$string);