因为接触的东西越来越多,阅读的内容也越来越丰富,最近就产生了一个困惑:“当我们写数组时,是否需要在数组的最后一个元素之后追加一个逗号”
有问题,那么我们就需要找思路来解决和处理问题,实践出真知,说干就干,测试开始o(∩_∩)o__
首先需要明确我们的探究目的:
以PHP为例:
不追加逗号是这样的
array(
"name" => "lilei",
"age" => "18"
)
追加逗号是这样的
array(
"name" => "lilei",
"age" => "18",
)
首先我们需要将PHP错误报告级别设置为最严格的方式
error_reporting(E_ALL);
然后执行下面这段简单的代码
$arr= array(
"name" => "lilei",
"age" => "18",
);
print_r($arr);
执行结果:
Array
(
[name] => lilei
[age] => 18
)
嗯,结果很美,并没有报告任何错误和警告,连notice都没有
结论:追加逗号不会造成PHP的语法错误
还是上面那个数组,我们分别对两种写法进行一次count()
//不追加逗号
$arr= array(
"name" => "lilei",
"age" => "18"
);
echo count($arr);
//追加逗号
$arr= array(
"name" => "lilei",
"age" => "18",
);
echo count($arr);
执行结果:
不追加逗号:2
追加逗号:2
结论:追加逗号不会改变数组长度
| 优点 | 缺点 |
---|---|---|
追加逗号 | 无论是增加还是删减元素,都无需考虑数组结尾有没有追加逗号,改变时随心即可完成,方便 | 虽然在PHP中追加逗号不存在问题,但在json和sql中,这种语法是会产生错误的 |
不追加逗号 | 完全符合PHP的语法,且几乎所有语言的语法逻辑都是如此,不必担心兼容性问题 | 除了变更数组的时候需要考虑数组结尾有没有追加逗号之外,似乎并没有什么特别突出的缺点 |
建议大家还是养成良好的习惯,同意编程风格,不采用在数组最后一个元素后面追加逗号的做法,尤其是需要接触多种语言的情况下。
或者可以只在php中使用追加逗号这种做法
又或者可以选择性的在PHP中使用追加逗号的做法,比如
在格式化写法时追加逗号
array(
"name" => "lilei",
"age" => "18",
)
在非格式化写法时不追加逗号
array("name" => "lilei","age" => "18")
本文采用 「CC BY-NC-SA 4.0」创作共享协议,转载请标注以下信息:
原文出处:Yiiven https://cloud.tencent.com/developer/article/2193130
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有