PHP。用于 nusoap 客户端调用的 Wamp 和 xml 问题
PHP. Issues with Wamp and xml for nusoap client call
我正在处理 nusoap 客户端调用,对于 Web 服务,我正在使用 nusoap.php 最后一个库。
当我制作 XML 结构时,我使用了这个:
$string =<<<XML<?xml version='1.0'?><cliente>
<nombre>$posts['nombre']</nombre>
<apellido>$posts['apellido']</apellido>
<calle>$posts['direccion']</calle>
<altura>$posts['altura']</altura>
<pisodto>$posts['pisodto']</pisodto>
<localidad>$posts['localidad']</localidad>
<provincia>$posts['provincia']</provincia>
<partido>$posts['partido']</partido>
<telefono>$posts['telefono']</telefono>
<celular>$posts['celular']</celular>
<email>$posts['email']</email>
</cliente>
XML;
但出于某种原因 WAMP 不喜欢它,我总是收到此错误:
Parse error: syntax error, unexpected '<<' (T_SL) in G:\wamp\www\bsmart\PHPtoXML2\enviarxml.php on line 98
这是完整的代码
date_default_timezone_set('America/Argentina/Buenos_Aires');
require_once 'assets/clases/nusoap/nusoap.php';
$wsdl = "http://ws.maxirest.com/wsclientes/wscli06896.php?WSDL";
$cliente = new nusoap_client($wsdl);
$produccion = false; //Cambiar a verdadero por producction
$endpoint = $wsdl;
//print_r($_POST);
$posts = $_POST;
if ($produccion == false) {
$posts['nombre'] =
$posts['apellido'] =
$posts['direccion'] =
$posts['pisodto'] =
$posts['localidad'] =
$posts['partido'] =
$posts['provincia'] =
$posts['telefono'] =
$posts['celular'] =
$posts['altura'] =
$posts['email'] =
"PRUEBA";
}
$string =<<<XML<?xml version='1.0'?><cliente>
<nombre>$posts['nombre']</nombre>
<apellido>$posts['apellido']</apellido>
<calle>$posts['direccion']</calle>
<altura>$posts['altura']</altura>
<pisodto>$posts['pisodto']</pisodto>
<localidad>$posts['localidad']</localidad>
<provincia>$posts['provincia']</provincia>
<partido>$posts['partido']</partido>
<telefono>$posts['telefono']</telefono>
<celular>$posts['celular']</celular>
<email>$posts['email']</email>
</cliente>
XML;
$param = array('cXml' => $string, 'clave' => "123ClubMilaMREST5");
$client = new nusoap_client($wsdl);//Ruta donde se encuentra nuestro servicio para consumirlo
$resultado = $client->call('AltaSolicitud',$param);
//Codigo para debugear y ver la respuesta y posibles errores, comentar cuando se comprueba que está correcto el servicio y la llamada
$err = $client->getError();
if ($err) {
echo '<p><b>Constructor error: ' . $err . '</b></p>';
}
echo '<h2>Request</h2>';
echo '<pre>' . htmlspecialchars($client->request, ENT_QUOTES) . '</pre>';
echo '<h2>Response</h2>';
echo '<pre>' . htmlspecialchars($client->response, ENT_QUOTES) . '</pre>';
echo htmlspecialchars($client->response, ENT_QUOTES) . '</b></p>';
echo '<p><b>Debug: <br>';
echo htmlspecialchars($client->debug_str, ENT_QUOTES) .'</b></p>';
//Comentar hasta aquí
if($client->fault)
{
echo "FAULT: <p>Code: (".$client->faultcode.")</p>";
echo "String: ".$client->faultstring;
}
else
{
var_dump ($resultado);
}
我想可能缺少某个库,但我不确定,如果能提供任何帮助,我们将不胜感激,在此先感谢。
XML后需要换行。
$string = <<<XML
^
line break mandatory, it marks the end of the "XML" mark (heredoc identifier).
有关重要详细信息,请参阅 PHP Heredoc String Syntax。
此外,数组字符串键 内部 字符串未被引用。
完整示例:
$string = <<<XML
<?xml version='1.0'?><cliente>
<nombre>$posts[nombre]</nombre>
<apellido>$posts[apellido]</apellido>
<calle>$posts[direccion]</calle>
<altura>$posts[altura]</altura>
<pisodto>$posts[pisodto]</pisodto>
<localidad>$posts[localidad]</localidad>
<provincia>$posts[provincia]</provincia>
<partido>$posts[partido]</partido>
<telefono>$posts[telefono]</telefono>
<celular>$posts[celular]</celular>
<email>$posts[email]</email>
</cliente>
XML;
我正在处理 nusoap 客户端调用,对于 Web 服务,我正在使用 nusoap.php 最后一个库。
当我制作 XML 结构时,我使用了这个:
$string =<<<XML<?xml version='1.0'?><cliente>
<nombre>$posts['nombre']</nombre>
<apellido>$posts['apellido']</apellido>
<calle>$posts['direccion']</calle>
<altura>$posts['altura']</altura>
<pisodto>$posts['pisodto']</pisodto>
<localidad>$posts['localidad']</localidad>
<provincia>$posts['provincia']</provincia>
<partido>$posts['partido']</partido>
<telefono>$posts['telefono']</telefono>
<celular>$posts['celular']</celular>
<email>$posts['email']</email>
</cliente>
XML;
但出于某种原因 WAMP 不喜欢它,我总是收到此错误:
Parse error: syntax error, unexpected '<<' (T_SL) in G:\wamp\www\bsmart\PHPtoXML2\enviarxml.php on line 98
这是完整的代码
date_default_timezone_set('America/Argentina/Buenos_Aires');
require_once 'assets/clases/nusoap/nusoap.php';
$wsdl = "http://ws.maxirest.com/wsclientes/wscli06896.php?WSDL";
$cliente = new nusoap_client($wsdl);
$produccion = false; //Cambiar a verdadero por producction
$endpoint = $wsdl;
//print_r($_POST);
$posts = $_POST;
if ($produccion == false) {
$posts['nombre'] =
$posts['apellido'] =
$posts['direccion'] =
$posts['pisodto'] =
$posts['localidad'] =
$posts['partido'] =
$posts['provincia'] =
$posts['telefono'] =
$posts['celular'] =
$posts['altura'] =
$posts['email'] =
"PRUEBA";
}
$string =<<<XML<?xml version='1.0'?><cliente>
<nombre>$posts['nombre']</nombre>
<apellido>$posts['apellido']</apellido>
<calle>$posts['direccion']</calle>
<altura>$posts['altura']</altura>
<pisodto>$posts['pisodto']</pisodto>
<localidad>$posts['localidad']</localidad>
<provincia>$posts['provincia']</provincia>
<partido>$posts['partido']</partido>
<telefono>$posts['telefono']</telefono>
<celular>$posts['celular']</celular>
<email>$posts['email']</email>
</cliente>
XML;
$param = array('cXml' => $string, 'clave' => "123ClubMilaMREST5");
$client = new nusoap_client($wsdl);//Ruta donde se encuentra nuestro servicio para consumirlo
$resultado = $client->call('AltaSolicitud',$param);
//Codigo para debugear y ver la respuesta y posibles errores, comentar cuando se comprueba que está correcto el servicio y la llamada
$err = $client->getError();
if ($err) {
echo '<p><b>Constructor error: ' . $err . '</b></p>';
}
echo '<h2>Request</h2>';
echo '<pre>' . htmlspecialchars($client->request, ENT_QUOTES) . '</pre>';
echo '<h2>Response</h2>';
echo '<pre>' . htmlspecialchars($client->response, ENT_QUOTES) . '</pre>';
echo htmlspecialchars($client->response, ENT_QUOTES) . '</b></p>';
echo '<p><b>Debug: <br>';
echo htmlspecialchars($client->debug_str, ENT_QUOTES) .'</b></p>';
//Comentar hasta aquí
if($client->fault)
{
echo "FAULT: <p>Code: (".$client->faultcode.")</p>";
echo "String: ".$client->faultstring;
}
else
{
var_dump ($resultado);
}
我想可能缺少某个库,但我不确定,如果能提供任何帮助,我们将不胜感激,在此先感谢。
XML后需要换行。
$string = <<<XML
^
line break mandatory, it marks the end of the "XML" mark (heredoc identifier).
有关重要详细信息,请参阅 PHP Heredoc String Syntax。
此外,数组字符串键 内部 字符串未被引用。
完整示例:
$string = <<<XML
<?xml version='1.0'?><cliente>
<nombre>$posts[nombre]</nombre>
<apellido>$posts[apellido]</apellido>
<calle>$posts[direccion]</calle>
<altura>$posts[altura]</altura>
<pisodto>$posts[pisodto]</pisodto>
<localidad>$posts[localidad]</localidad>
<provincia>$posts[provincia]</provincia>
<partido>$posts[partido]</partido>
<telefono>$posts[telefono]</telefono>
<celular>$posts[celular]</celular>
<email>$posts[email]</email>
</cliente>
XML;