2016-06-12 56 views
-4

问题:什么是关联数组?

什么是关联数组?


在阐述问题:

语法我看到搜索关联数组如下所示时:

$myArray = array(
    "car" => "truck", 
    "price" => 50000 
); 

,我很想知道数组的结构做了什么,关联数组的目的和一些例子,以便我可以对未来的使用有一个完整的理解。

+0

这个问题的目的在Stack Overflow中为关联数组提供了一个很好的答案。我已经通过网站搜索,并没有找到这个问题的直接答案,并决定采取自己提供它,以及有社区的帮助,以便当未来的用户出现时,他或她可以有一个履行回答 – Webeng

+0

如果有人因为这个问题在网站上有一个很好的答案而下降了,请评论并告诉我,如果是的话,我会很乐意被证明是错误的,尽管我的意图纯粹是为了给网站添加好内容。 .. – Webeng

+5

我投票结束这个问题作为题外话题,因为它是关于语言的基本功能,只需简短地浏览[文档](http://php.net/array)就可以教你。 –

回答

1

答:

,来了当传统的程序员(在PHP)认为数组的第一件事是类似于:

$myArray1 = array(2016, "hello", 33);//option 1 

$myArray2 = [2016, "hello", 33];//option 2 

$myArray3 = [];//option 3 
$myArray3[] = 2016; 
$myArray3[] = "hello"; 
$myArray3[] = 33; 

哪里,如果我们想在稍后的部分代码中调用数组,我们可以这样做:

echo $myArray1[1];// output: hello 
echo $myArray2[1];// output: hello 
echo $myArray3[1];// output: hello 

前一个示例显示使用连续阵列,因为它们按预定顺序递增所使用的索引,对于每个随后的值递增1)。

到目前为止这么好。然而,作为人类,我们可能会发现很难记住数组是指数[0]是的 2016年,数组的索引[1]问候,和数组的索引[2]值是一个简单的整数值为。然后,我们可以选择使用所谓的关联阵列。关联阵列与连续阵列有一些不同。

差异(顺序和关联数组之间):

  • Durring关联数组的声明中,不仅包括要放置在阵列中什么value,但您还可以在代码后面的部分调用数组时使用您想要使用的索引值(称为key)。在声明期间使用以下语法:"key" => "value"

  • 当使用关联数组时,key值将被放置在数组的索引内以检索所需的value

例如:

$myArray1 = array( 
     "Year" => 2016, 
     "Greetings" => "hello", 
     "Integer_value" => 33);//option 1 

    $myArray2 = [ 
     "Year" => 2016, 
     "Greetings" => "hello", 
     "Integer_value" => 33];//option 2 

    $myArray3 = [];//option 3 
    $myArray3["Year"] = 2016; 
    $myArray3["Greetings"] = "hello"; 
    $myArray3["Integer_value"] = 33; 

而现在,作为之前接收相同的输出,所述key值将在阵列索引中使用:

echo $myArray1["Greetings"];// output: hello 
echo $myArray2["Greetings"];// output: hello 
echo $myArray3["Greetings"];// output: hello