草庐IT

Try-catch

全部标签

Java Catching and Handling Exceptions(二)

一、Trywithresources语句trywithresources语句是声明一个或多个资源的try语句。资源是程序使用完后必须关闭的对象。trywithresources语句确保在语句末尾关闭每个资源。任何实现java.lang.AutoCloseable的对象(包括实现java.io.Closeable的所有对象)都可以用作资源。下面的示例从文件中读取第一行。它使用BufferedReader的实例从文件中读取数据。BufferedReader是一种资源,必须在程序完成后关闭:staticStringreadFirstLineFromFile(Stringpath)throwsIOEx

php - 如何防止/捕获 MySQLi 的连接错误

这个问题在这里已经有了答案:Shouldweevercheckformysqli_connect()errorsmanually?(1个回答)关闭2年前。例如,对于下面给定的代码,如果数据库名称无效,您如何防止连接错误?$mysql=newmysqli('localhost','user','pass','wrongdatabase');if($mysql->connect_errno)die($mysql->connect_error);if语句会输出正确的错误信息,但第一行仍然会发出警告,说Warning:mysqli::mysqli()[mysqli.mysqli]:(42000

php - 为什么我们使用 try block 来抛出异常。我们不能在没有 try block 的情况下简单地抛出并捕获它们吗?它的重要性是什么?

我想弄清楚在异常处理中是否需要tryblock。我正在学习php中的自定义错误处理,代码如下:classcustomExceptionextendsException{publicfunctionerrorMessage(){return"Erroratline".$this->getLine()."in".$this->getFile()."".$this->getMessage()."isnotavalidemailaddress";}}$email="someone@example.com";try{if(!filter_var($email,FILTER_VALIDATE_EM

php - 什么是 PHP 相当于 Python 的 Try : . .. 除了:

我是一名强大的Python程序员,但在PHP方面却不尽如人意。我需要尝试一些事情,如果那不奏效,那就做点别的。这是它在Python中的样子:try:print"stuf"except:print"somethingelse"这在PHP中会是什么? 最佳答案 http://php.net/manual/en/language.exceptions.phptry{print'stuff';}catch(Exception$e){var_dump($e);}注意:这仅适用于异常,不适用于错误。参见http://www.php.net/ma

php - 在 PHP 中创建一个 Catch-All 处理程序?

我想要一个PHP文件来捕获和管理用户访问时将要发生的事情:http://profiles.mywebsite.com/sometextsometext是变化的。例如它可以是someuser也可以是john等。然后我想要一个PHP文件来处理来自该结构的请求。我的主要目标是让特定的PHP文件将我的站点用户重定向到他们相应的配置文件,但他们的配置文件与该URL结构不同。我的目标是为我的用户提供一种易于内存的个人资料URL。感谢那些愿意回答的人! 最佳答案 在Apache配置文件[VirtualHost或Directory指令]中,或在.h

php - Guzzle Curl 错误未被 try catch 语句捕获(Laravel)

在Laravel项目中,我需要调用APIREST来删除远程数据。我的问题是当我遇到错误时,我的catch语句没有捕获Guzzle异常。我的代码如下:try{$client=new\GuzzleHttp\Client();$request=$client->delete(Config::get('REST_API').'/order-product/'.$id);$status=$request->getStatusCode();}catch(Exception$e){var_dump($e);exit();}异常被Laravel捕获,但没有在我的catch语句中。Guzzle抛出的异常

php - Laravel ajax catch 500 内部服务器错误

我将Laravel与ajax结合使用,并且在我的Controller中有一个try-catchblock:try{something...}catch(\Exception$e){returnresponse()->json(['status'=>'error','message'=>'errormessage']);}我正在使用它在页面上的div中显示错误消息。这是有效的,但如果错误是500-内部服务器错误(例如:tokenmismatchexception)则无效。然后错误不会被catchblock捕获,并且基本上不会向用户通知任何错误(除了在控制台中)。有什么方法可以捕获此类错误

php - 在 php 中使用自定义异常类有什么意义?

在一些库中,通常的做法是为每个错误条件制作自定义异常类,例如:classFileNotFound_ExceptionextendsException{}您可以处理某些类型的异常,但是您无法阅读所有库的所有源代码来记住每个异常类,也无法充分利用使用自定义异常。大多数时候我只是用基本异常类来捕获它们:catch(Exception$e){//loganddisplayfriendlyerror}是否有其他方法可以利用自定义异常类,而无需编写长长的catchblock列表?我喜欢异常,但不知道如何正确使用它们。谢谢。 最佳答案 拥有自己的

php - try block 中的代码在异常后继续执行?

我正在尝试在我的网站上实现Google+登录,但遇到了问题。这是我的代码(在创建Google_Client对象之后):try{$client->authenticate($_GET['code']);$plus=new\Google_Service_Plus($client);$person=$plus->people->get('me');$firstName=$person->modelData->name->givenName;}catch(Google_Auth_Exception$e){$response=array('error'=>'Error:Authenticatio

在 catch block 中设置对象属性时 PHPUnit 测试失败

我正在测试setSubject方法,如果它丢失,该方法将主题设置为(空主题)。如果试图访问未声明的属性,Zend_Mail会抛出异常(例如,电子邮件主题丢失,最好抛出一些异常)。更多信息:http://framework.zend.com/issues/browse/ZF-11371这是我需要用来成功测试它的东西:类protectedfunctionsetSubject(){#catchexceptionthrownifnonexisting$this->messageobjectpropertyisaccessedtry{$this->subject=$this->defunctTh