php数组(并删除某些元素)

时间:2010-07-27 11:13:36

标签: php arrays

我不是100%但是这个($ settings)会在php中被称为数组:

$setting;

$setting['host'] = "localhost";
$setting['name'] = "hello";

但是这个名称与上面的不同之处是什么:

$settings = array("localhost", "hello");

同样从第一个例子中我如何删除名为name的元素?

(如果我犯了错误,请更正我的术语)

3 个答案:

答案 0 :(得分:3)

  

我不是100%但这个($设置)   将在php中被称为数组:

你应该百分百肯定,他们是:)

  

但这是什么名字   与上述不同:

此:

$setting['host'] = "localhost";
$setting['name'] = "hello";

这是声明php数组的不同方法。

$settings = array("localhost", "hello");

事实上,这是以后应该如何将第一个与键匹配:

$settings = array("host" => "localhost", "name" => "hello");
  

另外从第一个例子我怎么样   删除名为?的元素?

您可以使用unset删除

unset($setting['name']);

请注意,在声明PHP数组时,请执行以下操作:

$setting = array();

而不是:

$setting;

另请注意,您可以通过使用[]后缀将数据附加到数组,例如将第三个元素添加到数组中,您可以这样做:

$setting[] = 'Third Item';

更多信息:

http://php.net/manual/en/language.types.array.php

答案 1 :(得分:2)

正如sAc所说,他们都是阵列。声明数组的正确方法是$settings = array();(而不是第一行中的$settings;。)

第一种和第二种方式的主要区别在于第一种方式允许您使用$settings['host']$settings['name'],而后者只能用于数字索引($settings[0]和{ {1}})。如果你想使用第一种方式,你也可以像这样声明你的数组:$settings[1]

More reading on PHP arrays

答案 2 :(得分:1)

这确实是一个数组。你在php中有不同类型的数组。您提到的第一个示例称为关联数组。只是一个以字符串为键的数组。

关联数组可以用两种方式声明:

1)(你宣称它的方式):

$sample = array();
$sample["name"] = "test";

2)

$sample = array("name" => "localhost");

此外,第一个示例还可用于将现有项添加到数组中。例如:

$sample["name"][] = "some_name";
$sample["name"][] = "some_other_name";

当您使用print_r($ sample)执行上述代码时,您会得到类似的内容:

Array ( [name] => Array ( [0] => some_name [1] => some_other_name ) )

在向现有数组添加多个字符串时,这非常有用。

从数组中删除值非常简单,

如上所述,使用unset函数。

unset($sample["name"]) 

取消设置与其相关的整个名称值和值 或者,当您只想取消设置$ sample [“name”]中的特定项目时:

unset($sample["name"][0]);

或者,当然你喜欢的任何项目。

基本上......第一个例子和后者的区别在于第一个是关联数组,第二个不是。

有关数组的进一步参考,请访问the PHP manual on arrays