首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >parse_ini_file()没有手动确认

问parse_ini_file()没有手动确认
EN

Stack Overflow用户
提问于 2018-04-02 09:11:56
回答 1查看 187关注 0票数 0

关于PHP的档案()中的一些怪癖,我有两个问题。

有些保留字不能用作ini文件的密钥。包括:空,是,不,真,假,开,关,不。除非使用INI_SCANNER_TYPED模式(如PHP5.6.1),否则null、off、no和false会导致"",而值on、“是”和“真”则会导致"1“。

根据以上所述,如果设置了no,则可以使用INI_SCANNER_TYPED作为键。那为什么它会失败呢?

代码语言:javascript
复制
$ echo "no=1" > a.cfg | php -r 'print_r(parse_ini_file("a.cfg", TRUE, INI_SCANNER_TYPED));'
PHP Warning:  syntax error, unexpected BOOL_FALSE in tmp.cfg on line 1
$ php --version
PHP 7.1.14 (cli) (built: Feb  2 2018 08:41:46) ( NTS )

另外,下面列出的字符的“特殊含义”是什么?手册没有详细说明。

字符?{}&~()^“不能在键中使用,并且在值中具有特殊的含义。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-04-02 09:41:40

你曲解了你引用的课文。上面写着:

值 null、off、no和false导致"",值 on、yes和true导致"1",除非使用INI_SCANNER_TYPED模式(如PHP5.6.1)。

上面写的是价值。在默认模式下,这些值被转换为字符串""和"1"。在INI_SCANNER_TYPED模式中,这些值被转换为布尔值false和true。

它没有提到钥匙的事。这些词仍然不能用作键。

检查它的工作原理:https://3v4l.org/5uZFN

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49608429

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档