PHP 中的 '(花式撇号?)是什么意思

2023-12-03

我得到了这个示例 PHP 代码:

if ( $new_value && ’ == $old_value )
  1. 我该怎样称呼这个角色&&
  2. 它有什么作用
  3. 如何在键盘上输入它,以及
  4. 最重要的是,我可以使用什么来代替人类可读的位置,并且看起来不像我试图炫耀我对晦涩代码速记的知识?

我在这里找不到它:参考 — 这个符号在 PHP 中意味着什么?因为谷歌会忽略它,而大多数其他搜索都会对待它'(撇号)我一无所获。


该字符在 PHP 中没有特殊含义,可能只是您正在阅读的代码中的错误。例如,它的本意可能是''(一个空字符串)但被一些 Markdown 风格的格式化系统弄乱了。

在 PHP 8.0 之前,由于两个稍微奇怪的功能的组合,它实际上不会产生错误:

  • 任何可能是有效常量名称但当前未定义为常量的名称都会被视为字符串,就像您使用与名称相同的值定义常量一样。该功能在 PHP 8.0 中被删除。
  • 变量或常量名称中允许使用 7 位 ASCII 之外的任何字节(即值 128 到 255),即使在开头也是如此。由于这个字符不是 ASCII 格式的,因此它将使用一堆与此规则匹配的字节以 UTF-8 格式呈现 - 请注意,PHP 实际上并不关心它们在 UTF-8 中的含义,它只是认为它们是非字符-ASCII 并让您可以在任何地方使用它们。

结果是’ == $old_value实际上被解释为'’' == $old_value,即“$old_value匹配包含该字符的字符串?"

在 PHP 8.0 中,不再允许这种解释,并且您将在运行时收到一个错误,指出该常量未定义。然而,您实际上可以定义这个常量,并且该代码将在从 4.3 到 8.0 的所有 PHP 版本上运行没有任何错误或警告:

<?php

// Define our oddly-named constant to have a value of 'hello'
define('’', 'hello');

// Compare it against a normal string variable
$foo = 'hello';

if ( ’ == $foo ) {
    echo 'It works!';
}

需要明确的是,这并不是特别有用,除非您想对某人恶作剧,否则它只是解释了一个令人惊讶的事实:这不是语法错误。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP 中的 '(花式撇号?)是什么意思 的相关文章

  • 提交ajax表单并停留在同一页面不起作用

    我想将用户的评论存储在我的数据库中 当用户提交时 我不想将他们重定向到新页面 我有以下代码 但它不起作用 我的 HTML 代码
  • symfony2 选择单选框的默认值

    我的项目是使用 Silex 和 Symfony 组件 即表单组件 编写的 我尝试创建一组从类中构建的单选按钮 并且我想预先选择其中一个单选按钮 我创建这样的表格 form app form factory gt createBuilder
  • 用于分页的php示例脚本[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 任何人都可以建议一个好的分页 php 脚本 其中人们想要分页显示数据库中的大量项目 以下链接可以帮助您
  • PHP 有效读取 csv 文件

    有几种使用 PHP 读取 CSV 文件的方法 我以前用过explode函数将每一行放入一个数组中 然后explode逗号并使用trim删除数据周围的任何引号 本来就很乱 PHP 5 现在有fgetcsv和 str getcsv 我猜这是这些
  • 计算两个数字之间的差异

    我想计算两个给定数字之间的差异 例如 1 5 或 24 35 我必须将数组中的数字分开并写出它们之间的差异 如下所示 1 2 3 4 5 或 24 25 26 27 28 29 30 31 32 33 34 35 是否有任何 php 函数可
  • 如何从 Laravel 5 中的 Public/Images 文件夹中删除图像(URL 数据)

    如何从 laravel 5 中的 public images 文件夹中删除图像文件 我从这个网站找到了一些例子 但我知道他们只是在他们的文件中使用文件名record table 但我正在使用类似的东西URL e g localhost pr
  • php 在内容前插入十六进制字符数

    我正在将网站移动到新服务器 旧服务器有 php 5 3 2 新服务器有 php 5 5 9 Centos httpd Apache 2 2 26 我已经复制了文件 它工作正常 除了唯一奇怪的事情 一些奇怪的十六进制数字被插入到页面内容之前
  • 一次将多个值插入MySQL [重复]

    这个问题在这里已经有答案了 谁能解释一下为什么这个 PHP MySQL 不起作用 基本上我需要从表单中一次插入大量行 因此会有多个名称字段 多个短 中 长字段等 我收到此错误 Notice Undefined variable Short1
  • Propel Query 中的动态表名称

    我想知道您是否可以使 propel 查询的表名称动态化 有点像变量 一个例子类似于 DynamicVar Query create 我让它在 ifs 中工作 就像下面的例子一样 但如果更动态地制作 可以删除相当多的行 这些表的设置都是相同的
  • 使用 PDO 在 SQLite 中检索单个(且唯一)行的最简单方法

    我有这个 PDO stmt db gt prepare SELECT FROM channels WHERE id id stmt gt bindValue id id SQLITE3 INTEGER result stmt gt exec
  • CSV 从 UTF8 到 ISO-8859-1

    我正在尝试修改我的 CSV 导出 但它不会将我的 CSV 从 UTF 8 转换 保存为 ISO 8859 1 请问我做错了什么吗 实际上自从修改了这个之后 我得到了一个空的 CSV 文件 php 7 0 x function my Gene
  • 使用 DOM 获取 div 的内容(包括子标签)

    我正在使用 DOM 来获取 div 标签的内容 但内部 html 部分未显示 功能是 dom new DOMDocument libxml use internal errors true dom gt loadHTMLFile url l
  • 疯狂的 crond 行为。不断使 bash 进程失效

    我有一个看起来像这样的 crontab SHELL bin bash PATH sbin bin usr sbin usr bin MAILTO root HOME 0 59 var www html private fivemin zda
  • 如何覆盖 phpunit 中导出的变量?

    我知道我可以设置环境变量 https phpunit de manual current en appendixes configuration html在我的 phpunit xml 里面
  • 避免 SQLite3 中的 SQL 注入

    我正在尝试找出一种避免 SQL 注入的好简单方法 到目前为止我只能提出两个想法 对用户输入进行 Base64 编码 其实不想这样做 使用正则表达式删除不需要的字符 目前正在使用这个 不确定是否100 安全 这是我当前的代码
  • 从多个选择列表中插入数据到mysql数据库(html形式)

    我制作了一个表格 其中有商店的 ID
  • 使 div 的大小与其内部图像的大小相同

    我有一个带有以下代码的div HTML div img src img logo png div CSS div imgContainer width 250px height 250px padding 13px 问题是用户可以编辑图像大
  • 无法在 Centos 上安装 php-mysqli 扩展

    我正在尝试将 mysqli 扩展安装到 php yum install php mysqli 我收到下一个错误 Transaction Check Error file usr share mysql charsets Index xml
  • NodeJS 和 PHP (Laravel) 集成用于 Socket.IO 实时聊天

    目前我有一个我写过的网站PHP通过Laravel 框架 我已经使用写了一个实时聊天nodeJS with 套接字IO and Express现在我想做的是将它集成到我已经编写的 Laravel 网站中 问题是聊天必须在主页中 当前由 Lar
  • PHP 中的 Zip 流

    我有一个 PHP 脚本 可以动态创建 zip 文件并强制浏览器下载该 zip 文件 问题是 我可以直接将zip文件写入连接到用户浏览器的输出流 而不是先将其保存为服务器上的真实文件 然后发送文件吗 提前致谢 如果您的 Web 服务器运行的是

随机推荐

  • Angular 2 表单“找不到控件”

    我正在尝试使用 Angular 2 Forms 进行验证 但是当我尝试添加多个控件时 似乎它只是被忽略了 我遵循了许多不同的指南 看看其他人是如何做的 但这些方法似乎都不起作用 我一直在我的模板中做的是
  • 使用 QT 设计器创建的 PyQt5 程序从终端打开时不显示任何窗口

    我使用 QT Designer 没有任何问题 但今天我开始了一个新的 ubuntu 18 04 安装 但这一次当我从终端运行 PyQt5 程序时 它们没有显示任何窗口 从atom runner运行时也有同样的问题 它甚至没有显示任何窗口 错
  • 如何将用户信息从登录页面传递到主页?

    Error An object reference is required for the non static field method or property User Picture 如何将用户信息从登录页面传递到主页 线上错误Pic
  • 如何在 DataTables 中使用 pdfhtml5 导出 标签

    我想导出 a 使用 DataTables 中的单元格内的标签或链接pdfhtml5 截至目前 该链接显示为纯文本 如何打印它 包括其格式 这是一个两步过程 Step 1 使用数据表exportOptions format函数将完整的 HTM
  • IRC河豚加密模式?

    我一直在用这个工具做一些测试 http crypto hurlant com demo CryptoDemo swf并尝试匹配从 Mirc Blowfish 获得的 Blowfish 结果 来自以前的 Fish secure us v1 3
  • 在远程 Linux 机器上编译 C++ - “检测到时钟偏差”警告

    我通过 PuTTY 和 WinSCP 连接到我大学的小型 Linux 集群 使用后者传输文件并使用前者编译和运行它们 到目前为止 我的工作是在大学实验室进行的 但今天我在家里做了一些工作 产生了一个有趣的警告 我上传了整个文件夹的内容 然后
  • 通用方法返回类型 - 编译错误[重复]

    这个问题在这里已经有答案了 鉴于此代码示例 class A public class TestGenerics private static
  • Chrome 在 HTTP 302 重定向时取消 CORS XHR

    看起来像根据CORS 规范 GET 和 POST 请求应透明地遵循 302 重定向 但 Chrome 正在取消我的请求 这是执行请求的 JS var r new XMLHttpRequest r open GET https dev mys
  • 带有空格的图像文件名

    我通过 php 扫描图像文件夹获取图像 URL 数组 某些图像文件名带有空格 空格后面的部分丢失了 例如 这个文件很好 http domain com folder blue sky png 这个文件会丢失sky png部分 http do
  • Django/Python 环境错误?

    当我尝试使用时出现错误syncdb python manage py syncdb 错误信息 File usr local lib python2 6 dist packages django conf init py line 83 in
  • 如何处理我不知道其类型的脚本?

    我的游戏使用各种不同的游戏模式 我想根据所选的游戏模式在场景开始时生成不同的 GameController 脚本 然后其他项目 例如 敌人 将引用主 GameController 无论是 GameController Mode1 GameC
  • Angular Material2 md-select 下拉列表出现在页面底部

    我目前正在 Angular 2 4 0 应用程序中使用 Angular Material2 使用 angular material 2 0 0 beta 1 由于某种原因 md select 下拉列表没有出现在初始值或占位符或箭头上来选择下
  • 无法解析的日期

    我有一个字符串日期 31 Dec 和模式 dd MMM 以及下一个代码 DateFormat formatter new SimpleDateFormat pattern formatter setTimeZone timeZone for
  • VBA 中的 LinEst 函数可以使用数组吗?

    基本上 我不是从单元格中选择一个范围 而是通过使用循环将值存储在数组中 我理想中想做的是将这些数组用作 LinEst 函数中已知的 x 和 y 这样做的目的并不重要 因为我想做的只是我已经编写的代码的一部分 然而 Do 循环 至少是第二个
  • 在 r 中,获取功率曲线中“a”和“b”值的输出值

    我对这个基本问题表示歉意 但无论出于何种原因 我确实陷入困境 我希望从 y a x b 的 a 和 b 功率曲线中获得输出值 假设我有这个数据集 x y log10 x log10 y 7 240 0 84509804 2 38021124
  • 为什么 NSUserDefaults 在我的应用程序和共享扩展程序之间不起作用?

    我有一个带有共享扩展的 iOS 应用程序 我正在尝试使用 NSUserDefaults 和应用程序组在它们之间共享数据 但是 虽然我可以写入 NSUD 对象 读取它 并且synchronize 没有错误 读取扩展名总是会导致nil 我有一个
  • PHP MySQL查询包含关键字/保留字[重复]

    这个问题在这里已经有答案了 我在更新 MySQL 数据 包括 HTML 数据 时遇到了问题 我不断修复错误 然而 一旦修正了一个错误 就会产生另一个错误 目前的错误如下 You have an error in your SQL synta
  • libipopt.so.1:无法打开共享对象文件

    执行基本安装后Ipopt 我能够编译他们提供的示例Ipopt 3 12 5 Ipopt examples hs071 cpp成功使用命令 g hs 071 main cpp hs071 nlp cpp I path to build inc
  • 从 F# 中的二叉搜索树中删除元素

    我正在尝试编写一种方法来从 BST 中删除元素 到目前为止 这就是我所拥有的 我不确定我是否走在正确的轨道上 或者是否有更好的方法通过使用模式匹配来匹配不同的删除情况 即 没有子项 1 个子项 2 个子项 type a bst NL Bin
  • PHP 中的 '(花式撇号?)是什么意思

    我得到了这个示例 PHP 代码 if new value old value 我该怎样称呼这个角色 它有什么作用 如何在键盘上输入它 以及 最重要的是 我可以使用什么来代替人类可读的位置 并且看起来不像我试图炫耀我对晦涩代码速记的知识 我在