草庐IT

try-Catch

全部标签

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报错Trying to access array offset on value of type null

**问题:**PHP在运行时报错Tryingtoaccessarrayoffsetonvalueoftypenull原因分析:这个报错的意思是:尝试访问类型为null的值的数组偏移量,就是说有个变成为nul导致了报错。php版本为7.4的时候才出现了这个错误。新版php解释器会对null类型的下标访问直接报错。例如:$b=NULL;$a=$b['key']?$b['key']:0;上面这个语句,$b,为null的时候就报错了。解决方案有两种:**方案一:**降低PHP版本,可以尝试将PHP版本降到7.4以下,问题就是自动消失。**方案二:**修改代码例如,可以将$b=NULL;$a=$b['k

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 - WordPress : Asking FTP credentials when trying to install a plugin or theme

每次我尝试在我的WordPress网站中安装插件或主题时,系统都会提示我输入FTP凭据(ftp用户名、ftp密码、主机地址)。我该如何预防? 最佳答案 由于无法访问文件,系统会提示您输入FTP凭据。有两个选项可以遵循:在/wp-config.php文件中提供FTP凭据:define('FTP_USER','username');define('FTP_PASS','password');define('FTP_HOST','ftp.example.com:21');通过SO帖子中显示的检查:CanIinstall/updateWor

php - CakePHP 3 错误 : The application is trying to load a file from the DebugKit plugin

我的CakePHP3应用程序在我的本地服务器上运行良好。但是当我在Heroku上安装它时,我不断收到以下错误:错误:应用程序正在尝试从DebugKit插件加载文件。确保您的插件DebugKit位于/app/plugins/目录中并且已加载。我很困惑,因为我已经安装了composerinstall,并且我在vendor/cakephp/debug_kit中看到了debug_kit,但错误似乎是在其他插件目录中查找.为什么会这样?更新:我运行了composerinstall--verbose并且看到了以下错误:$composerinstall--verbose使用包信息加载Composer

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