【发布时间】:2018-07-26 22:24:44
【问题描述】:
我有以下功能:
public function query($sql)
{
$query = array(
"queryString"=>$sql
);
$queryWrapper = array(
"query"=>$query
);
try {
$result = $this->_client->__soapCall("query", $queryWrapper, null, $this->_header);
} catch (SoapFault $e) {
$this->_client->__getLastResponse();
}
return $result;
}
问题是我可以在__soapCall() 之前使用var_dump('anything');exit;,我看到“任何东西”。但是如果我在__soapCall() 之后var_dump('stuff');exit;,我只会得到一个空白页。我var_dump('something');exit; 在捕获中,但我没有看到。它仍然只是一个空白页。我的问题是,这可能是什么原因造成的?我认为如果我的查询中的表不存在,或者我的查询有问题,我会得到某种错误。但是我已经完全蹲下了。
【问题讨论】:
-
stackoverflow.com/questions/6374345/… 可能重复请检查,我相信您的问题已在答案中解决
-
@DmytroZasiadko:我已经尝试了这两个答案,并得到了与上面列出的相同的结果。
-
那么您是否尝试启用将
"exceptions" => true传递给soap 客户端构造函数并同时捕获\Exception $e的异常? -
@DmytroZasiadko:没错。
-
请记住,如果您看到一个空白页面,则可能是服务器正在响应。尝试查找事务的状态。例如,如果您有 500,则服务器会抛出错误,如果您有 200,则服务器正在响应,无效。