欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

第一次用php写webservice遇到一个很奇怪的有关问题,详细请看内容,有代码

程序员文章站 2024-02-07 21:30:40
...
第一次用php写webservice遇到一个很奇怪的问题,详细请看内容,有代码
1.服务器端代码(service):

require_once "../views/config.inc"; // 只要加上一个就报错,用include也一样,其中config.inc 文件很简单加上就报错
$soap = new SoapServer(null,array('uri'=>"http://xxxxxx.com.cn/",'encoding'=>'UTF-8'));
$soap->setClass('user');
$soap->handle();
class user
{
protected $Rolse=array();
public function getRoles($UserName,$Password)
{
return $UserName.$Password;
}
}
?>

2、客户端代码:

$roles=array();
try
{
$client = @new SoapClient(null,
array('location' =>"http://localhost/models/userInfo.php",'trace'=>1,'encoding'=>'UTF-8','uri' => "http://xxxxxx.com.cn")
);
$roles=$client->getRoles('test','12345678');
print_r($roles);
}
catch (SoapFault $fault)
{
echo "Error: ",$fault->faultcode,", string: ",$fault->faultstring;
}
?>

3.config.inc文件:

global $conf;
$conf['DBUSER']='root';
$conf['DBPWD']='';
$conf['DBHOST']='localhost';
?>


代码就这些,现在出现非常奇怪的问题:只要我在服务器端代码中加上“require_once "../views/config.inc";”在句,调用它就出错:“looks like we got no XML document”,把这行注释掉,程序就正常,一直没有找到解决办法。
php webservice soap
------解决方案--------------------
可能造成的原因:
1. 所有的php文件,包括直接和间接调用到的,注意在之前不能用任何空行或者空格字符,之后不能有任何空行或空白字符.
2. 程序本身的语法错误―-函数参数少了、少了封号、数据库错误等等的错误,而未使用异常处理来抓住这些错误。
3. 人为的返回了非XML标准的数据,如echo了一个非XML标准字符串等等。

上面是复制的

------解决方案--------------------
不引用,直接放在里面,看如何?
global $conf;
$conf['DBUSER']='root';
$conf['DBPWD']='';
$conf['DBHOST']='localhost';
?>
------解决方案--------------------
config.inc

global $conf;
$conf['DBUSER']='root';
$conf['DBPWD']='';
$conf['DBHOST']='localhost';
以 ANSI 保存
第一次用php写webservice遇到一个很奇怪的有关问题,详细请看内容,有代码

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频


网友评论

文明上网理性发言,请遵守 新闻评论服务协议

我要评论
  • 第一次用php写webservice遇到一个很奇怪的有关问题,详细请看内容,有代码
  • 专题推荐