php源码中三个大括号放在一起

Posted

技术标签:

【中文标题】php源码中三个大括号放在一起【英文标题】:Three curly brackets together in php source code 【发布时间】:2012-03-31 16:10:09 【问题描述】:

我刚刚从 php.net (PHP 5.4.0 [tar.bz2]) 下载了完整的 PHP 源代码。 他们经常一起使用三个大括号,如下所示(以下代码 sn-p 从 ext/ctype/ctype.c 中提取。)

/*  proto bool ctype_digit(mixed c)
   Checks for numeric character(s) */
 static PHP_FUNCTION(ctype_digit)
 
  CTYPE(isdigit);
 
/*  */

有没有人知道为什么要同时使用这三个大括号?

【问题讨论】:

一些编辑器使用它们来“折叠”代码块,因此只有注释行本身的文本可见,而实际代码被“折叠”掉了。 我不认为只是为了折叠他们允许添加三个花括号。 @HabeebPerwad 它在评论区——他们可以“允许”任何他们想要的东西。 :) 另见:github.com/php/php-src/blob/master/CODING_STANDARDS#L215 【参考方案1】:

它们是vim fold markers,它们可以很容易地折叠和展开 vim 中三个大括号之间的文本,在显示的示例中交替显示:

...

/*  proto bool ctype_digit(mixed c)
   Checks for numeric character(s) */
static PHP_FUNCTION(ctype_digit)

    CTYPE(isdigit);

/*  */

...

只是

...

/*  proto bool ctype_digit(mixed c)

...

如果你查看end of the file where you find them,你会经常发现这样的块:

/*
 * Local variables:
 * tab-width: 4
 * c-basic-offset: 4
 * End:
 * vim600: sw=4 ts=4 fdm=marker
 * vim<600: sw=4 ts=4
 */

这是这些 cmets 与 vim 相关的另一个更明显的指标。

【讨论】:

我现在是折叠的忠实粉丝!

以上是关于php源码中三个大括号放在一起的主要内容,如果未能解决你的问题,请参考以下文章

php如何合并PNG图片

ICO图标在线生成,php生成ICO图标在线制作源码

lamp源码搭建详解及wordpress搭建

lamp源码搭建详解及wordpress搭建

owncloud源码分析2--数据库增删改查

PHP新写的大转盘抽奖源码