【问题标题】:What is meaning of tilde(~) symbol mean in the context of this PHP documentation page?在此 PHP 文档页面的上下文中,波浪号 (~) 符号的含义是什么?
【发布时间】:2018-06-05 07:09:32
【问题描述】:

考虑下面来自PHP Manual 的语句,让我知道在此上下文中使用的波浪号(~)符号 的含义。

浮点数的大小取决于平台,但最大值为 ~1.8e308 精度约为 14 位十进制数字是常见的 值(64 位 IEEE 格式)。

另外,让我知道波浪号(~)符号的含义在PHP语言的其他上下文中是否具有否定/非的含义,例如数学(例如, ~A 的意思是“不是 A”。)?

数学或逻辑表达式中使用的波浪号(~)符号可以是PHP吗?如果是,请为我提供一些相同的相关工作代码示例。如果不解释一下背后的原因?

【问题讨论】:

  • Afaik,当与数字一起使用时,~ 符号用于传达“大致”/“大约”的含义。如果它在这里有不同的 PHP 特定含义,我会感到惊讶?
  • @SerialKisser:是的,~可以用在数学或逻辑表达式中的是PHP。请参阅下面的答案。

标签: php floating-point double decimal tilde


【解决方案1】:

编辑:我已经提交了一个补丁来修复它到 PHP 文档并且它被接受了,新的措辞是“大约 1.9e308”。

在这种情况下,它的意思是“大约”,即使由于您引用的模棱两可,该句子的措辞很差。

在此特定上下文中,符号背后没有数学或编程含义,尽管正如您所说,在程序中,~ 表示按位非运算符。

我的猜测是写它时没有考虑~在数字前的其他含义。

【讨论】:

  • ~ 是位运算符。在代码中使用时,它并不意味着“大约”。它翻转数字的位。
  • @MrGlass 没错,但这不在代码中。仔细阅读问题。
  • @MrGlass: ~ in texts 通常用于替换 unicode 代码点 U+2245(在大多数键盘上可能找不到),这意味着“大约等于”。这正是它在这里的含义:大约。 1.8e308.
【解决方案2】:

PHP 中的~ 运算符是"bitwise not"。它反转分配的位(0's 变成 1's 和 1's 变成 0's)。

已编辑以更正“按位”。

【讨论】:

  • 按位,不合逻辑。逻辑 not 运算符是 !
  • @Leigh,你是对的。我更正了链接描述。
  • 运算符的含义在这里完全无关紧要。问题是关于引用的文本,它的意思是“大约”。
  • @RudyVelthuis,SerialKisser 还问“数学或逻辑表达式中使用的 波浪号(~)符号可以是 PHP 吗?如果可以,请提供一些相同的相关工作代码示例。如果不给我解释一下背后的原因?我回答了那个特定的问题,这是他帖子中与 PHP 相关的唯一问题。
猜你喜欢
  • 2020-08-08
  • 2011-12-29
  • 2021-09-15
  • 2019-11-01
  • 2015-03-07
  • 2010-09-28
  • 2013-03-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多