我可以简化这个 PHP 表达式吗?
Can I simplify this PHP expression?
我有以下 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 次?
您可以将所有出现的地方合并到一个数组中:
function XMLToObject($in) {
$find = array('SOAP-ENV:', 'SOAP', 'common:', 'pdt:', 'apd:', 'bs7666:');
$replace = '';
return simplexml_load_string(str_ireplace($find, $replace, $in));
}
此外,将空字符串替换为空字符串的价值不大...
我有以下 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 次?
您可以将所有出现的地方合并到一个数组中:
function XMLToObject($in) {
$find = array('SOAP-ENV:', 'SOAP', 'common:', 'pdt:', 'apd:', 'bs7666:');
$replace = '';
return simplexml_load_string(str_ireplace($find, $replace, $in));
}
此外,将空字符串替换为空字符串的价值不大...