kel
kel

Reputation: 1599

Create array from PHP form post

I'm trying to create a multidimensional array from a form post. This is the dump from that post:

array(8) {
  ["check"]=>
  int(1)
  ["option_page"]=>
  string(19) "content_boxes_group"
  ["action"]=>
  string(6) "update"
  ["_wpnonce"]=>
  string(10) "0adb157142"
  ["_wp_http_referer"]=>
  string(39) "/wp-admin/themes.php?page=home-settings"
  ["title"]=>
  array(3) {
    [1]=>
    string(9) "Downloads"
    [2]=>
    string(7) "Columns"
    [3]=>
    string(4) "Apps"
  }
  ["id"]=>
  array(3) {
    [1]=>
    string(21) "k2-settings-downloads"
    [2]=>
    string(19) "k2-settings-columns"
    [3]=>
    string(16) "k2-settings-apps"
  }
  ["order"]=>
  array(3) {
    [1]=>
    string(1) "1"
    [2]=>
    string(1) "2"
    [3]=>
    string(1) "3"
  }
}

I'm trying to make it look like this:

array(
    array('title' => 'Downloads', 'id' => 'k2-settings-downloads', 'order' => '1'),
    array('title' => 'Columns', 'id' => 'k2-settings-columns', 'order' => '2'),
    array('title' => 'Apps', 'id' => 'k2-settings-apps', 'order' => '3')
);

How can I do this?

Upvotes: 0

Views: 267

Answers (1)

Jayyrus
Jayyrus

Reputation: 13051

something like this?

$post   = $_POST['your_array'];
$output = array();
$titles = $post['title'];
$ids    = $post['id'];
$orders = $post['order'];
foreach($titles as $id => $title){
   $output[] = array("title"=>$title,"id"=>$ids[$id],'order'=>$orders[$id]);
} 

Upvotes: 1

Related Questions