【问题标题】:Creating an array with its values from a Multidimensional array使用来自多维数组的值创建一个数组
【发布时间】:2017-03-17 17:57:08
【问题描述】:

我想用另一个数组“$array”中的值创建一个数组,但作为键...

$array= array
  (
  array(
    "name"       => "name", 
    "text"       => "Name",
    "type"       => "input", 
    "data-error" => "Please enter the client's name.", 
    "required"   => "required"),
  array(
    "name"       => "address", 
    "text"       => "Address",
    "type"       => "textarea", 
    "data-error" => "Please enter the address.", 
    "required"   => "required"),
  array(
    "name"       => "email", 
    "text"       => "Email",
    "type"       => "input", 
    "data-error" => "Please enter an email address", 
    "required"   => "required"),
  array(
    "name"       => "telephone", 
    "text"       => "Telephone",
    "type"       => "text", 
    "data-error" => "Please enter the telephone number", 
    "required"   => "required")
);

输出数组应如下所示:

$new_array = ["name", "address", "email", "telephone"];

如何使用 $array 中给出的信息创建这个新数组?它始终是多维数组中每个子数组中 key = "name" (第一个元素)的值。 $数组

谢谢

【问题讨论】:

  • 你的问题有点不清楚。如果 nfnneil 的回答解决了您的问题,请给它打上绿色勾号,如果不是,您可能需要通过编辑来澄清您的问题。当我阅读它(现在几次)时,您可能会询问如何创建一个包含子数组的数组,该子数组包含每个属性的所有值。真的吗?喜欢:$new_array("name"=>array("name","address","email","telephone"),"text"=>... 澄清你的问题不仅会帮助希望回答你问题的 SO 成员,也会帮助未来有同样问题的研究人员。

标签: php arrays multidimensional-array key associative


【解决方案1】:

您可以使用foreach 循环遍历数组。 array_push 将用于将元素附加到 $finalArray 的末尾。最后,我使用var_dump在页面上显示内容(用于测试目的)。

$finalArray = Array();
foreach ($array as $key => $value) {
    array_push($finalArray, $value['name']);
}
var_dump($finalArray);

从技术上讲,此循环不需要$key,但我想向您展示如何使用foreach。如果您想以简单的方式进行操作,只需删除$key =>。像,如下:

foreach ($array as $value) {

【讨论】:

    猜你喜欢
    • 2013-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-17
    相关资源
    最近更新 更多