首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP数组可以容纳不同类型的项吗?

问PHP数组可以容纳不同类型的项吗?
EN

Stack Overflow用户
提问于 2012-09-20 16:04:16
回答 5查看 17K关注 0票数 15

在其他编程语言中,数组的定义可以包含类似类型的元素。例如,如果我声明类似int i[]的东西,它将存储整数,但在PHP中,单个数组似乎将字符串和数字放在一起。

在PHP中,在这种类型的数组中,数字/整数会被视为字符串吗?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2012-09-20 16:24:26

你确实可以在According to the PHP manual“数组”中存储异构类型--向下滚动到示例3。

请注意,尽管示例中的键是整型或字符串,但示例中分配的值也是整型和字符串,这说明可以存储异构类型。

请注意,在不同类型的键的情况下,会涉及到自动类型转换,因此在字符串包含有效小数表示的情况下,您可能会得到令人惊讶的结果。

票数 11
EN

Stack Overflow用户

发布于 2012-09-20 16:11:00

在PHP中,数组甚至不是数组,它们是有序的哈希表。

票数 2
EN

Stack Overflow用户

发布于 2019-02-04 02:33:39

是。PHP数组中可以有多种数据类型。另外,您应该注意到PHP中的数组实际上是以键-值对的形式表示的,其中您将输入到数组中的元素是值。您也可以在向数组中输入元素时显式定义键,但如果不这样做,PHP将使用从0开始的索引。示例:

代码语言:javascript
复制
 <?php
$array = array(
    "foo" => "bar",
    "bar" => "foo",
    100   => -100,
    -100  => 100,
);
var_dump($array);
?>

PHP将解释为

代码语言:javascript
复制
 array(4) {
  ["foo"]=>
  string(3) "bar"
  ["bar"]=>
  string(3) "foo"
  [100]=>
  int(-100)
  [-100]=>
  int(100)
}

参考- http://php.net/manual/en/language.types.array.php

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

https://stackoverflow.com/questions/12511764

复制
相关文章

相似问题

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