首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数组变量加1的结果是什么

问数组变量加1的结果是什么
EN

Stack Overflow用户
提问于 2011-02-12 03:23:42
回答 6查看 1.9K关注 0票数 1

我正在看一些PHP代码,我找到了这一行,我不知道它的意思

代码语言:javascript
复制
            $contents[$item] = (isset($contents[$item])) ? $contents[$item] + 1 : 1;

所以,如果条件计算为真,那么到底发生了什么,这是递增数组索引还是将数组值加1?

任何解释或其他资源都将受到高度赞赏。

EN

回答 6

Stack Overflow用户

发布于 2011-02-12 03:25:15

例如,如果$contents[$item]是3,那么它就变成了4。它不会弄乱整个$contents数组,也不会更改$item键;它只是更改数组中的特定值(如果它存在的话)。

将其可视化为:

代码语言:javascript
复制
$item = 'a';

$contents = array(
    'a' => 3
);

// $contents['a'] is set, so it assigns $contents[$item] to itself, plus 1
$contents[$item] = (isset($contents[$item])) ? $contents[$item] + 1 : 1;

echo $contents[$item]; // Output is 4
票数 5
EN

Stack Overflow用户

发布于 2011-02-12 03:38:33

代码语言:javascript
复制
 $contents[$item] = (isset($contents[$item])) ? $contents[$item] + 1 : 1;

在功能上等同于:

代码语言:javascript
复制
 @$contents[$item]++;

(我期待您的更正。)

票数 2
EN

Stack Overflow用户

发布于 2011-02-12 03:26:41

这只是一种奇特的写作方式

代码语言:javascript
复制
if (isset($contents[$item]))
  $contents[$item] = $contents[$item] + 1;
else
  $contents[$item] =  1;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4973133

复制
相关文章

相似问题

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