为PHP创建异常,使页面不会崩溃
我正在尝试修复我的网站的一个问题。它使用持有多个订阅服务的第三方 索引页面显示了其中的一些服务,但它只是页面的一小部分,但是当连接到第三方的服务器崩溃时,我的整个网站都崩溃了。我使用web服务从数据库获取数据,并使用PHP使用web服务 我认为我有正确的异常来捕获任何错误,因此如果Web服务关闭,它不会使我的网站崩溃。任何人都可以看看下面的代码,看看我能做些什么来防止崩溃为PHP创建异常,使页面不会崩溃,php,web-services,error-handling,exception-handling,crash,Php,Web Services,Error Handling,Exception Handling,Crash,我正在尝试修复我的网站的一个问题。它使用持有多个订阅服务的第三方 索引页面显示了其中的一些服务,但它只是页面的一小部分,但是当连接到第三方的服务器崩溃时,我的整个网站都崩溃了。我使用web服务从数据库获取数据,并使用PHP使用web服务 我认为我有正确的异常来捕获任何错误,因此如果Web服务关闭,它不会使我的网站崩溃。任何人都可以看看下面的代码,看看我能做些什么来防止崩溃 public function getIncomingReservations($outcome="") { $ht
public function getIncomingReservations($outcome="")
{
$html_code = '';
$amount = 0;
$reservationDetails = '';
$reservationTitle = '';
$reservationURL = '';
$reservationDate = '';
$noreservationsToShow = true;
try
{
$reservations = $this->webService->getAllreservations();
if(isset($reservations->Hotel))
{
if(!is_array($reservations->Hotel))
{
$reservations->Hotel = array($reservations->Hotel);
}
$html_code = '<dl>';
foreach($reservations->Hotel as $reservation)
{
if($amount >= WebServicesWidgets::$MAX_incoming_reservations)
{
break;
}
$reservationDetails = $this->webService->getreservationDetails($reservation->HotelId);
if($reservationDetails->haseBusiness === true && $reservationDetails->isValidated === true)
{
$noreservationsToShow = false;
$reservationTitle = $reservationDetails->shortName;
$reservationURL = $this->EWEBSITE_URL . $reservationDetails->HotelId;
$reservationDate = $reservationDetails->startDate;
$html_code .= '<!-- ' . $reservationDetails->HotelCode . ' | ' . $reservation->HotelId . ' -->';
$html_code .= '<dt><a href="'. $reservationURL . '">' . $reservationTitle . '</a></dt>';
$html_code .= '<dd>' . date('F j - g:i A', $reservationDate) . '</dd>';
++$amount;
}
}
$html_code .= '</dl>';
}
else
{
$html_code = WebServicesWidgets::$NO_reservationS;
}
}
catch(Exception $e)
{
$html_code = WebServicesWidgets::$FAIL_MSG;
}
if($noreservationsToShow)
{
$html_code = WebServicesWidgets::$NO_reservationS;
}
if(empty($return)){
echo($html_code);
}
else {
return $html_code;
}
}
你发布的代码是什么语言?它看起来不像javascript?如果这是产生javascript的代码,你能举一个不起作用的例子吗?崩溃到底是什么意思?网页是否显示任何错误?您是否在日志中看到错误?网页变绿了,真的生气了吗?@ArtjomB。我们得到的错误只是一个简单的500内部服务器错误。例如,两天前,服务器空间不足,停止运行,而当网站运行正常时,由于无法访问服务器,整个网站都崩溃了。到目前为止,我还没有把它变成绿色。