Değişken derinlik çok boyutlu bir dizi String

0 Cevap php

Ben bir dizeden çok boyutlu bir dizi oluşturmak için çalışıyorum ($ _GET alınan, giriş bu örnekte geçerliliği, ancak değildir). Her bir '-' çok boyutlu dizide seviyesini gösterecektir.

Değerler (- tuşları arasındaki mevcut olduğu 'sürece, gerçekten herhangi bir formu) bu gibi bakabilirsiniz. Değerler dizisi boyutlu bir dizideki herhangi bir derinliğe eşleyebilir.

$array = array(
  'page-title' => 'Title of a page',
  'page-url' => 'http://www.mypage.com',
  'meta-page-author' => 'Some guy',
  'meta-page-created' => 'some timestamp'
);

Ben farklı çözümler denedim, ama şimdiye kadar çalışan tek şey tuşları açmasının döngü ve özüdür.

foreach ($array as $key => $value) {
  if (strpos($key, '-') !== false) {
    $keyArray = explode('-', $key);
    // ??
  }
}

Ben umut ediyorum çıktı, bu gibi görünmelidir:

array(
  'page' => array(
      'title' => 'Title of a page',
      'url' => 'http://www.mypage.com'
  ),
  'meta' => array(
      'page' => array(
         'author' => 'Some guy',
         'created' => 'some timestamp'
       )
  )
);

0 Cevap