如果 PHP 版本的条件忽略新代码

2024-01-05

所以我有一个需要在多个站点上运行的脚本。我有一个版本的脚本,它使用一些新的 PHP 5.3 函数进行了优化,但有些网站是 5.2 等。

这段代码:

if (version_compare(PHP_VERSION, '5.3.0') >= 0) {
    Do the optimised 5.3 code (Although 5.2 throws syntax errors for it)
} else {
  do the slower version of code
}

然而,在 5.2 服务器上,它将检测第一个 if 条件中的“语法错误”,即使它在技术上应该跳过该内容,但我知道 PHP 仍然会扫描整个文件。

我怎样才能让 5.2 完全忽略第一个(我知道我可以使用“@”来忽略错误,但这感觉像是作弊?)


您可以根据版本包含不同的脚本,那么该版本将永远不会包含语法在 5.2 中无效的脚本。

if (version_compare(PHP_VERSION, '5.3.0') >= 0) {
     include("script53.php");
} else {
     include("script52.php");
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如果 PHP 版本的条件忽略新代码 的相关文章

  • 准备好的语句需要 0 个参数,给定 1 个参数..,使用 php 手册示例 [重复]

    这个问题在这里已经有答案了 我直接从 php 手册示例中获取了这个 它几乎与我需要的相同 但我仍然收到此错误 有人可以告诉我我错过了什么吗 stmt link gt prepare SELECT obitBody Photo FROM tn
  • Laravel 5.1 中的VerifyCsrfToken.php 第 53 行:(Firefox 浏览器)中出现 TokenMismatchException?

    我试图找出为什么会出现这个错误 即使它是全新安装的 我在我的项目中遇到了这个错误 所以我用谷歌搜索 没有一个答案对我有用 所以我创建了新项目并复制了所有控制器 视图和模型 几个小时后工作正常 再次出现令牌不匹配错误 为什么在 laravel
  • Laravel - 停止并发访问记录

    在 Laravel 中 有什么方法可以停止同时与同一条记录交互 例如 如果用户 A 正在编辑一条记录 那么我同时需要阻止用户 B 编辑同一条记录 注意 我在 Laravel 5 2 中使用 SESSION DRIVER file 目前大约有
  • 在 PHP 中将 CSV 写入不带括号的文件

    是否有本机函数或实体类 库用于将数组写入 CSV 文件中的一行而无需封装 fputcsv将默认为 如果没有为封装参数传入任何内容 谷歌让我失望了 返回一大堆有关的页面的结果 fputcsv PEAR 的库做的事情或多或少与fputcsv 工
  • 重复使用相同的卷曲手柄。性能大幅提升?

    在 PHP 脚本中 我对不同的 URL 执行了许多不同的curl GET 请求 一百个 将重复使用来自curl init提高性能 还是与请求的响应时间相比可以忽略不计 我这么问是因为在当前的架构中保持相同的句柄并不容易 交叉发布自我应该关闭
  • 如何在MAMP中设置环境变量?

    如何在 MAMP 版本 3 3 中设置环境变量 我可以在我的 PHP 应用程序中使用它 我已经更新了 Applications MAMP Library bin envvars and envvars std file并添加以下行 Lice
  • session_regenerate_id 没有创建新的会话 id

    我有一个脚本 旨在完成当前会话并开始新的会话 我使用了一段代码 它在我的开发计算机上运行良好 但是 当我将其发布到生产服务器时 会话 ID 始终保持不变 以下是我重新启动会话的代码 session start SESSION array P
  • 具有动态表单名称的 form_widget

    在我的 Twig 模板中 我有一个 FOR 循环 它创建多个表单 如下所示 for thing in things set form id myform thing Id set form name attribute form myfor
  • 使用 PHP 的 Google Glass GDK 身份验证

    我正在尝试点击此链接来验证 GDK 中的用户 https developers google com glass develop gdk authentication https developers google com glass de
  • Composer 用于下载私有 GitHub 存储库

    我无法使用 Composer 下载 github 私人存储库 php composer phar update 我收到以下错误 The https api github com repos company private1 https ap
  • 使用PHP套接字发送和接收数据

    我正在尝试通过 PHP 套接字发送和接收数据 一切正常 但是当我尝试发送数据时 PHP 不发送任何内容 Wireshark 告诉我发送的数据长度为 0 我正在使用这段代码
  • PHP中如何识别服务器IP地址

    PHP中如何识别服务器IP地址 对于服务器 ip 来说是这样的 SERVER SERVER ADDR 这是港口的 SERVER SERVER PORT
  • 通过JS Laravel访问存储目录

    有没有办法访问storage目录 该目录已经链接到publicJS 中的目录 我正在尝试制作一个上传图片的表单 验证脚本 if request gt hasFile photos marker gt photos request gt ph
  • 如何在html中制作多行类型的文本框?

  • 如何从字符串中删除所有数字?

    我想删除字符串 0 9 中的所有数字 我写了这段有效的代码 words preg replace 0 words remove numbers words preg replace 1 words remove numbers words
  • php 表单提交 - Q2

    我对这个虚拟问题感到抱歉 这是我的简单 PHP 表单 其中包含两个 SQL 表和 ADD 提交 按钮 我希望将人员从 Test1 转移到 Test2 很多事情都很好 只有提交按钮不起作用 因此 Test2 表没有反馈 Revised 现在提
  • php下拉菜单人口

    我正在尝试编写一个 php 脚本 该脚本将根据主下拉菜单的选择填充第二个下拉菜单 我想使用 jquery 来完成所有非页面刷新的事情 但我发现现有的所有东西都很难理解和修改 你知道有什么写得很好且易于理解的东西吗 或者可能是现有的教程 下面
  • mysqli bind_param 中的 NULL 是什么类型?

    我正在尝试将参数绑定到 INSERT INTO MySQLi 准备好的语句 如果该变量存在 否则插入 null 然后我知道 type variable i corresponding variable has type integer d
  • 如何使用 Google 帐户对我们网站中的用户进行身份验证

    如何在我们的网站中使用 Google 帐户对用户进行身份验证 我希望用户重定向到谷歌登录页面 然后将他重定向到我的网站 我想要这个 PHP 实现 你要OAuth http code google com apis accounts docs
  • 在 PHP 中模拟 jQuery.ajax 请求

    我必须在 PHP 中模拟 AJAX 请求 就像在 jQuery 中一样 我当前的代码在这里 原始 AJAX 调用 不得修改 ajax type POST url someFile php data data success function

随机推荐

  • 没有自动隐藏的JavaFX MenuItem [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我想要一个 MenuItem 更具体地说是 CheckMenuItem 它不会在单击时自动隐藏 我知道 CustomMenuItem
  • 使用 fs2 将 URL 流式传输到本地文件

    使用 fs2 版本 1 0 4 和 cats effectIO 我可以将 URL 流式传输到本地文件 import concurrent ExecutionContext Implicits global def download spec
  • “编译时”和“运行时”有什么区别?

    我不明白术语 编译时 和 运行时 或 运行时 的含义 我也对 值类型 和 引用类型 的含义以及它们与上述 时代 的关系感到有点困惑 有人可以解释一下这些事情吗 编译时 是指构建代码的时间 编译器将源代码转换为 IL 的时间 运行时 是指执行
  • ‘authority’应该是Uri格式参数名称:authority

    我根据这个例子开发了我的 mvc 应用程序 https github com AzureADSamples WebApp WebAPI OpenIDConnect DotNet https github com AzureADSamples
  • jQuery XML 错误“请求的资源上不存在“Access-Control-Allow-Origin”标头。”

    我正在开发我的个人项目只是为了好玩 我想读取位于以下位置的 xml 文件 http www ecb europa eu stats eurofxref eurofxref daily xml http www ecb europa eu s
  • 在 Java 中预览 HTML [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 您知道哪些库 方法可以在 Swing 中进行一些基本的 HTML 表示 您能评论一下您的经历吗 一个好
  • 如何在 Scaladoc 中全局搜索方法?

    我是否有可能通过 scala 文档在全局范围内搜索类 特征或对象中的方法 示例 我有一个方法名称 但我不知道它属于哪个类 因此我可以在某些 scaladoc 搜索中键入它 它会向我显示包含给定名称的方法的类 PS 我本来会添加标签 scal
  • 插入创建新表

    我有两个大表 想要将所有列名 不是作为视图 合并到一个新表中 I 没有权限右键单击每个表并选择 CREATE TO SCRIPT 所以我想知道是否有一种方法可以将两个表插入到新表中而不指定列数据类型 SELECT top 0 INTO Ne
  • SQL Server 中的四舍五入

    我需要对 SQL Server 中最接近 2 个位置的一些数据类型数字进行四舍五入 Eg Input 123 10000000 Output 123 10 感谢致敬 Ismail 您需要将其转换 Select Convert numeric
  • 如何在已经居中对齐的元素周围添加元素?

    我创建了一个表单 其中一些文本元素垂直对齐 如下所示 它们使用 Flexbox 在页面上水平和垂直居中 my class display flex justify content center align items center flex
  • 在pdf c#中的另一个图像上添加图像水印

    All 我正在尝试使用 itextsharp 在 pdf 中添加图像水印 水印按预期出现在所有页面上 但其中已经有图像 我希望我的水印图像位于 pdf 上现有图像的顶部 我正在使用以下代码来添加图像 using Stream output
  • std::size_t 与 size_t 与 std::string::size_type

    哪里有size t当我没有包含任何东西时来自 总是假设是否合理size t std size t 我什么时候应该使用size type in std容器 string size type vector
  • Unity3D XML(-RPC) 和 C#

    我实际上是在这里回答我自己的问题 我一定是世界上唯一尝试这样做的人 但考虑到我花了大约一周的时间才解决这个问题 我想如果还有另一个人想在 Unity 中使用 XML RPC 我将为他们省去一周的麻烦 我想做的是与我们的游戏服务器之一对话以获
  • 使用 PHP API oauth2.0 的 Google 日历服务帐户 - 如何访问未共享的日历

    我在使用 Google 提供的 PHP 库读取日历事件时遇到问题 我想要阅读的日历不是公开共享的 但我想在我的服务器应用程序上阅读它们 尽管日历是与我共享的 但保存日历的帐户与我的帐户是分开的 我将其称为 API 帐户 根据 Google
  • 如何在flutter中访问另一个有状态小部件中一个有状态小部件中创建的对象

    我被困在我的项目中 我在 flutter 中创建了两个有状态的小部件作为两个不同的 dart 文件 现在 我必须在第二个小部件中访问第一个小部件中创建的对象的实例 但我不太确定在创建小部件时如何在 flutter 中执行此操作 我想到的一种
  • Hibernate多用户,动态变化

    从技术上讲 这里有两个问题 但紧密耦合 我在一个新项目中使用 Hibernate 它是POS http en wikipedia org wiki Point of sale项目 它使用Oracle数据库 我们决定使用 Hibernate
  • 如何使用 SLURM 通过 CUDA 在 GPU 网格上运行多个作业

    我一直致力于使用 CUDA 加快作业的处理时间 通常这会相当简单 但是我遇到了一个相当有趣的问题 我们使用 slurm 来安排我们的作业 通过添加 CUDA 代码并启用它的编译 它使单个作业时间减少了一半 当查看 GPU 上的负载时就会出现
  • 无法在 Visual Studio 2008/2010 中查看 WIX 项目类型

    我的计算机上安装了 Visual Studio 2008 2010 和 WIX37 msi WIX 3 7 但是 我无法在 Visual studio 2008 2010 中看到 WIX 项目类型 我需要安装额外的工具 插件吗 我的计算机上
  • 获取组件的实际宽度和高度

    我们在 JavaScript 中面临着一个相当可怕的问题 我们似乎都没有能力解决这个问题 我们如何获取 DOM 元素 包括子元素 整个盒模型等 的宽度和高度 而组件实际上并未显示在页面上 请记住 我正在寻找建议 即使答案不能完全回答问题 或
  • 如果 PHP 版本的条件忽略新代码

    所以我有一个需要在多个站点上运行的脚本 我有一个版本的脚本 它使用一些新的 PHP 5 3 函数进行了优化 但有些网站是 5 2 等 这段代码 if version compare PHP VERSION 5 3 0 gt 0 Do the