3
A
回答
3
这是GeoIP软件包中的一个错误,在任何版本中都没有修复(< = 1.0.8)。它固定在树干上(see this revision)。你可以通过编译最新的中继源来解决这个问题。
编辑:感谢Wrikken指出Laravel如何处理错误。
随着GeoIP的< = 1.0.8 geoip_country_code_by_name
将触发一个错误(E_NOTICE)每当名称不能被发现。 Laravel将始终将error_reporting设置为-1并处理所有错误(甚至是通知)并将它们转换为ErrorExceptions。通常可以使用try-catch块捕获ErrorExceptions,但在这种情况下,这是不可能的,因为Laravel从不抛出异常,只是将其转换为显示和日志记录目的。
可以忽略与@-operator的错误。这样做有点不好,因为它会忽略该函数可能抛出的所有错误。但是,在这种情况下,只有其他错误geoip_country_code_by_name
才能触发,这是数据库无法到达时的警告。因此,您可以安全地忽略错误,如果你要确保数据库是可用的:(代码未测试)
if (geoip_db_avail(GEOIP_COUNTRY_EDITION))
{
@geoip_country_code_by_name('unknown');
}
else
{
// Throw exception or handle the error
throw new Exception(
"Required database not available at " .
geoip_db_filename(GEOIP_COUNTRY_EDITION)
);
}
编辑: Laravel现在抛出ErrorException,使人们可以使用捕捉它try-catch块。在写这篇文章的时候,这个改变还没有在任何发布的标签中。但一个捕捉错误将可能与Laravel /框架> = 4.0.8。
1
相关问题
- 1. System.out.println()不抛出异常,但System.in.read()抛出异常,为什么?
- 2. 为什么抛出异常这么慢?
- 3. parseuser.SignUpAsync()抛出什么异常?
- 4. 什么是抛出异常
- 5. jsoup.element.select()抛出什么异常?
- 6. Newtonsoft.Json.DeserializeObject抛出什么异常?
- 7. 为什么Boolean.class.newInstance()抛出异常?
- 8. 为什么这抛出异常
- 9. 为什么BeanUtils.copyProperties会抛出IllegalArgument异常?
- 10. 为什么重新抛出异常?
- 11. 为什么Assert没有抛出异常
- 12. Java HSQL为什么抛出AbstractMethodError异常?
- 13. 枚举抛出concurrentModification异常。为什么?
- 14. 为什么异常不会被抛出?
- 15. 为什么抛出空指针异常?
- 16. 为什么Exception(str())抛出异常?
- 17. 为什么Mockito不会抛出异常?
- 18. 为什么Log4Net从不抛出异常
- 19. 为什么`JSON.parse`不抛出异常?
- 20. 为什么这会抛出异常?
- 21. 为什么Image.Save(Stream,ImageFormat)抛出异常?
- 22. 为什么Matcher.group抛出IndexOutOfBoundsException异常
- 23. 为什么Hibernate抛出异常“java.lang.NoSuchMethodError:javax.persistence.UniqueConstraint.name()”?
- 24. JSON和Eclipse - 为什么抛出异常?
- 25. 为什么会resources.getStringArray(int)抛出异常?
- 26. TweetSharp为什么抛出异常?
- 27. 为什么GenericObjectPool.addObject抛出检查异常
- 28. 为什么TimeZone.getTimeZone()抛出异常
- 29. 为什么我的NSNotificationCenter抛出异常?
- 30. 为什么Java的抛出NumberFormatException异常
您是否安装了GeoIP * *? http://www.php.net/manual/en/geoip.setup.php顺便提一下,ErrorExceptions带有错误消息,指出错误是什么。 – ceejayoz
是的,geoip已安装。错误消息:“geoip_country_code_by_name():Host unknown not found”,但在文档中(http://php.net/manual/en/function.geoip-country-code-by-name.php),此函数应返回false for这个情况。 –
你有没有试过一个真正的主机名?也许它知道“未知”不是合法的。 – ceejayoz