PHP编码标准说:
... PHP 拥有每个字符串的长度属性,它不应该用 strlen() 来计算。以这样一种方式编写你的函数,以便它们能够利用长度属性,既是为了提高效率,也是为了使它们是二进制安全的。...
如何访问此长度属性?还是我误解了?
PHP编码标准说:
... PHP 拥有每个字符串的长度属性,它不应该用 strlen() 来计算。以这样一种方式编写你的函数,以便它们能够利用长度属性,既是为了提高效率,也是为了使它们是二进制安全的。...
如何访问此长度属性?还是我误解了?
正如伊格纳西奥在另一篇文章中提到的那样:
他们在谈论 C 函数,而不是 PHP 函数。C 函数将在第一个 \0 之后停止计数,但 PHP 字符串可以在结尾以外的其他位置包含 \0。
该文档很可能是关于如何扩展 PHP 的引擎,而不是使用 PHP 本身进行编程。
这些编码标准并非针对使用 PHP 的网站开发人员,而是针对 PHP 引擎本身的开发人员。
PHP 是使用 C 语言开发的,strlen
要避免的功能是 C 语言,而不是 PHP 语言。
从某种意义上说,它不是其他语言(如 C#)中的“属性”。
你不能这样做:
myString.Length;
相反,您需要这样做:
strlen(myString);