本文整理汇总了PHP中nusoap_client::clearDebug方法的典型用法代码示例。如果您正苦于以下问题:PHP nusoap_client::clearDebug方法的具体用法?PHP nusoap_client::clearDebug怎么用?PHP nusoap_client::clearDebug使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类nusoap_client
的用法示例。
在下文中一共展示了nusoap_client::clearDebug方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: isset
* Transport: http
* Authentication: none
*/
require_once '../lib/nusoap.php';
$proxyhost = isset($_POST['proxyhost']) ? $_POST['proxyhost'] : '';
$proxyport = isset($_POST['proxyport']) ? $_POST['proxyport'] : '';
$proxyusername = isset($_POST['proxyusername']) ? $_POST['proxyusername'] : '';
$proxypassword = isset($_POST['proxypassword']) ? $_POST['proxypassword'] : '';
echo '<h2>Constructor</h2>';
$client = new nusoap_client('http://www.scottnichol.com/samples/session.php?wsdl', true, $proxyhost, $proxyport, $proxyusername, $proxypassword);
$err = $client->getError();
if ($err) {
echo '<h2>Constructor error</h2><pre>' . $err . '</pre>';
}
echo '<h2>Debug</h2><pre>' . htmlspecialchars($client->getDebug(), ENT_QUOTES) . '</pre>';
$client->clearDebug();
// A persistent connection is *optional*, *not* necessary
$client->useHTTPPersistentConnection();
echo '<h2>GetSessionID</h2>';
$result = $client->call('GetSessionID', array());
// Check for a fault
if ($client->fault) {
echo '<h2>Fault</h2><pre>';
print_r($result);
echo '</pre>';
} else {
// Check for errors
$err = $client->getError();
if ($err) {
// Display the error
echo '<h2>Error</h2><pre>' . $err . '</pre>';
示例2: call
/**
* Internal utility methods
*/
private function call($service, $method, $params)
{
ini_set('memory_limit', '1024M');
ini_set('max_execution_time', 1800);
set_time_limit(0);
$url = $this->wsdl_root . $service . '.asmx?wsdl';
$timeout = 3000;
$cache = new nusoap_wsdlcache($this->cache_dir, $timeout);
$wsdl = $cache->get($url);
// Set the WSDL
if (is_null($wsdl)) {
$wsdl = new wsdl($url, NULL, NULL, NULL, NULL, 0, $timeout, NULL, TRUE);
$error = $wsdl->getError();
$debug = $wsdl->getDebug();
$wsdl->clearDebug();
// Check for SOAP errors
if (!empty($error)) {
$this->errors[] = $error;
if ($debug) {
$this->errors[] = '<pre>' . print_r($debug, TRUE) . '</pre>';
}
return FALSE;
}
$cache->put($wsdl);
}
// Send the SOAP request
$params['securityPassword'] = $this->wsdl_keys[$service];
$client = new nusoap_client($wsdl, 'wsdl', FALSE, FALSE, FALSE, FALSE, 0, $timeout);
$client->setDebugLevel(0);
// 0 - 9, where 0 is off
$client->useHTTPPersistentConnection();
if ($service == 'DataAccess' && $method == 'ExecuteStoredProcedure') {
/*
* See http://www.codingforums.com/archive/index.php/t-85260.html
* and http://users.skynet.be/pascalbotte/rcx-ws-doc/nusoapadvanced.htm
* for how to thwart the "got wsdl error: phpType is struct, but value is not an array"
* error returned by nusoap when processing the response from $client->call()
*
* */
$request = $client->serializeEnvelope(vsprintf('<ExecuteStoredProcedure xmlns="http://ibridge.isgsolutions.com/%s/">
<securityPassword>%s</securityPassword>
<name>%s</name>
<parameters>%s</parameters>
</ExecuteStoredProcedure>', array($service, $params['securityPassword'], $params['name'], $params['parameters'])));
$response = $client->send($request, 'http://ibridge.isgsolutions.com/' . $service . '/' . $method, 0, $timeout);
} else {
$response = $client->call($method, $params);
}
$error = $client->getError();
$debug = $client->getDebug();
$client->clearDebug();
// Check for SOAP errors
if (!empty($error)) {
$this->errors[] = $error;
if ($debug) {
$this->errors[] = '<pre>' . print_r($debug, TRUE) . '</pre>';
}
return FALSE;
}
// Process response
$response = $response[$method . 'Result'];
$data = NULL;
if (strpos($response, '<') == 0) {
// Some ISGweb methods return strings instead of XML
libxml_use_internal_errors(TRUE);
$response = preg_replace('/(<\\?xml[^?]+?)utf-16/i', '$1utf-8', $response);
// Change encoding string to UTF8
$response = utf8_encode($response);
$response = $this->strip_invalid_xml($response);
$obj = simplexml_load_string($response);
$data = $response;
$error = libxml_get_errors();
// Check for XML parsing errors
if (!empty($error)) {
foreach ($error as $e) {
$this->errors[] = $e;
}
libxml_clear_errors();
return FALSE;
}
$data = $this->object_to_array($obj);
// Check for ISGweb errors (e.g. invalid data input, failure of service, etc.)
if (array_key_exists('Errors', $data)) {
$error = $data['Errors'];
foreach ($error as $e) {
$this->errors[] = $e['@attributes']['Description'];
}
return FALSE;
}
} else {
$data = $response;
}
return $data;
}