我有以下要简化的PHP函数,什么是最好和最有效的方法?
function XMLToObject($dirtyXML) {
$clean_xml = str_ireplace([
'SOAP-ENV:',
'SOAP:'
], '', $dirtyXML);
$clean_xml2 = str_ireplace([
'common:',
''
], '', $clean_xml);
$clean_xml3 = str_ireplace([
'pdt:',
''
], '', $clean_xml2);
$clean_xml4 = str_ireplace([
'apd:',
''
], '', $clean_xml3);
$clean_xml5 = str_ireplace([
'bs7666:',
''
], '', $clean_xml4);
$xml = simplexml_load_string($clean_xml5);
return $xml;
}
我正在考虑使用其他功能,如...
function replace($oldVal,$newVal)
然后用我的不同值对迭代这4次?
答案 0 :(得分:2)
您可以将所有匹配项合并为一个数组:
function XMLToObject($in) {
$find = array('SOAP-ENV:', 'SOAP', 'common:', 'pdt:', 'apd:', 'bs7666:');
$replace = '';
return simplexml_load_string(str_ireplace($find, $replace, $in));
}
此外,用空字符串替换空字符串没什么价值......