全局变量$s代表什么?

时间:2011-10-28 作者:chamberlainpi

$GLOBALS[\'s\']变量包含什么?它看起来像一个空数组,但它通常包含什么?

我在教程中遇到过:The WordPress Theme: Single Post, Post Attachment, & 404 Templates, 它提到了传递给printf 函数调用。

字符串如下所示:

//START OF STRING

$entry_utility = <<<LONGSTR
This entry was posted in %1{$s}%2{$s}.
Bookmark the <a href="%3{$s}" title="Permalink to %4{$s}" rel="bookmark">permalink</a>.
Follow any comments here with the
<a href="%5{$s}" title="Comments RSS to %4{$s}" rel="alternate" type="application/rss+xml">RSS feed for this post</a>.
LONGSTR;

//END OF STRING

NOTE: I\'ve wrapped the long string from the tutorial inside a HEREDOC string instead, it was too hard to follow on the single line.

我已经将$s变量包装在花括号中,以防Herdocs无法正确解释它们。

1 个回复
最合适的回答,由SO网友:Tom Auger 整理而成

它不是一个全局变量;事实上,它根本不是一个变量。它只是sprintf() 作用看看sprintf PHP function documentation.

在您引用的示例中,作者使用的是“参数交换”占位符语法:%n$t,其中%n是与参数顺序相对应的占位符编号(例如:%1、%2等),而$t是类型指示符,其中“t”是“s”、“d”、“f”等之一(例如:$s、$d等)。把它们放在一起,你会得到%1$s%2$d等。

结束