मैं एक सहयोगी XML सेवा के साथ एक एक्सचेंज का निर्माण कर रहा था, और मुझे XML सही नहीं मिल रहा था, लेकिन जैसा कि सभी चीजों के साथ Drupal, xmlrpc त्रुटि और कार्रवाई लॉगिंग मजबूत से कम है।
इसलिए मैंने इसे शामिल किया / xmlrpc.inc।
function xmlrpc_request($method, $args) {
$xmlrpc_request = new stdClass();
$xmlrpc_request->method = $method;
$xmlrpc_request->args = $args;
$xmlrpc_request->xml = <<<EOD
<?xml version="1.0"?>
<methodCall>
<methodName>{$xmlrpc_request->method}</methodName>
<params>
EOD;
foreach ($xmlrpc_request->args as $arg) {
$xmlrpc_request->xml .= '<param><value>';
$v = xmlrpc_value($arg);
$xmlrpc_request->xml .= xmlrpc_value_get_xml($v);
$xmlrpc_request->xml .= "</value></param>\n";
}
$xmlrpc_request->xml .= '</params></methodCall>';
/* This part here */
watchdog('xmlrpc',$xmlrpc_request->xml);
/* End ridiculously tiny hack */
return $xmlrpc_request;
}
मुझे वह डेटा मिला जिसकी मुझे जरूरत थी और 10 मिनट में पार्टनर इंटरफेस ने मेरे अनुरोध का उचित जवाब दिया क्योंकि (चौंकाने वाला मुझे पता है) लॉग अच्छे हैं।
मुझे अतिरिक्त लॉगिंग पसंद है, और मैं इसे रखना चाहता हूं। ऐसा करने का साफ-सुथरा, सीधा और सबसे महत्वपूर्ण, द्रुपाल-अनुमोदित तरीका क्या है?
variable_set()
या एक समान तंत्र को सेट करने की आवश्यकता है जिसे यदि आवश्यकता हो तो निर्यात किया जा सकता है। :]