没有设置browscap ini指令

Rob*_*rst 41 javascript php ini browscap

我正在使用该get_browser()功能试图警告人们他们的浏览器不支持Javascript.实际上我正在用它来告诉他们他们可以使用我正在构建的Web应用程序的某些部分.我已经决定正确使用Javascript,因为我已经厌倦了听害怕使用它的开发人员而且我已经看到了该语言的一些巨大潜力.我离题了,这是错误.

没有设置browscap ini指令

现在我想象这意味着我需要把它设置为php.ini.有人可以给我一些方向吗?

Pas*_*TIN 72

我不认为这是检测的"最佳"解决方案是浏览器支持您的网站所需的内容:

  • 首先,浏览器可以撒谎 - 他们可以发送任何想要的东西 User-Agent
    • 即使给定版本的支持应该支持您所需的,Javascript仍然可以被禁用.
  • 第二,当谈到Javascript时,有更多"正确"的方法来检测浏览器可以做什么或不做什么.

对于第二点,您应该测试浏览器是否实际支持您需要的内容 - 而不是依赖于诸如browscap之类的列表.


不过,回答你的问题有关browscap:有在为手动页面底部的说明get_browser,上面写着(引用):

注意:为了使其正常工作,browscapphp.ini中的配置设置必须指向browscap.ini 系统上文件的正确位置.browscap.ini不与PHP捆绑在一起,但您可以在此处找到最新的» php_browscap.ini文件.
虽然browscap.ini包含许多浏览器的信息,但它依赖于用户更新来保持数据库的最新状态.该文件的格式是相当不言自明的.

所以,你必须:

  • 下载browscap文件,
  • browscap在您的php.ini文件中设置指令,因此它指向您下载的文件.

  • browscap被标记为PHP_INI_SYSTEM,因此无法使用ini_set或通过htaccess进行更改. (3认同)
  • 如果我无法访问我的php.ini文件,例如我在虚拟主机上?如何使用ini_set()设置browsercap位置? (2认同)
  • 我的 info.php 显示一切正常(指令 browscap 和 extra/browscap.ini),但调用 *get_browser()* 函数的 PHP 脚本显示“警告:get_browser():browscap ini 指令未设置”。 (2认同)

小智 17

我知道这个话题很老,但你可以使用类似的东西:

<noscript>JavaScript must be enabled</noscript>
Run Code Online (Sandbox Code Playgroud)

显示JavaScript是否未启用.