PHP 中的自定义函数如何实现带 @时不抛出错误?

WBOY
Freigeben: 2016-09-19 09:16:37
Original
952 Leute haben es durchsucht

在一些 PHP 内置函数(例如mkdir)中,在前面添加 @可以屏蔽该函数抛出的错误

那么自定义函数要如何实现这点呢?

我试了下throw new Exceptiontrigger_error都无法被@屏蔽

补充说明:

是这样的,例如我想写一个JsonFile::get()方法,当文件不存在时抛个错、路径非法时抛个错、解码失败时抛个错,并返回false

当用户在意错误信息时可以自行捕捉并处理;当不在意错误信息只希望得到文件内容或 false (失败)时,可以
@JsonFile::get()
这样调用

主要也是为了方便嘛。请问如何实现这样的自定义方法(或函数)呢?
或者说我这样的思路不太好?有没有既方便又合理的实现方法呢?

回复内容:

在一些 PHP 内置函数(例如mkdir)中,在前面添加 @可以屏蔽该函数抛出的错误

那么自定义函数要如何实现这点呢?

我试了下throw new Exceptiontrigger_error都无法被@屏蔽

补充说明:

是这样的,例如我想写一个JsonFile::get()方法,当文件不存在时抛个错、路径非法时抛个错、解码失败时抛个错,并返回false

当用户在意错误信息时可以自行捕捉并处理;当不在意错误信息只希望得到文件内容或 false (失败)时,可以
@JsonFile::get()
这样调用

主要也是为了方便嘛。请问如何实现这样的自定义方法(或函数)呢?
或者说我这样的思路不太好?有没有既方便又合理的实现方法呢?

首先要保证语法没问题,然后好像和 throw new Exception和trigger_error 没关系了,上代码:

Nach dem Login kopieren

Warning: mysql_connect() [function.mysql-connect]: Access denied for user '用户名错误'@'localhost' (using password: YES) in D:Projectsns1.php on line 4

test2没有抛出 Warning.

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!