你會怎樣改變一個單維數組PHP中的多維數組?假設你有這樣的事情變換單維PHP數組成多維一個
$array['breakfast'] = 'milk';
$array['meal.firstdish'] = 'pasta';
$array['meal.seconddish.maincourse'] = 'veal';
$array['meal.seconddish.dressing'] = 'fries';
$array['meal.dessert'] = 'pie';
你想要的功能將其改造成
$array['breakfast'] = 'milk';
$array['meal']['firstdish'] = 'pasta';
$array['meal']['seconddish']['maincourse'] = 'veal';
$array['meal']['seconddish']['dressing'] = 'fries';
$array['meal']['dessert'] = 'pie';
當然,同樣的功能要轉變
$tire['ean'] = '3286347717116';
$tire['brand.maker'] = 'BRIDGESTONE';
$tire['brand.model.name'] = 'POTENZA';
$tire['brand.model.variant'] = 'RE 040 RFT * SZ';
到
$tire['ean'] = '3286347717116';
$tire['brand']['maker'] = 'BRIDGESTONE';
$tire['brand']['model']['name'] = 'POTENZA';
$tire['brand']['model']['variant'] = 'RE 040 RFT * SZ';
我正在考慮使用爆炸,然後對結果進行評估,但eval總是感覺像是在欺騙我,我想這會讓我的代碼無法在HipHop中運行。
我想這樣做的原因是,我不得不從數據庫導出許多不同的表到XML文件,我已經有一個強大的功能,它可將多維數組轉換成XML。
請編輯您的代碼。你錯過了很多。看看_ [ 'meal.firstdish] _應該是_ [' meal.firstdish '] _和_亦[' 飯 '] [' firstdish] _ –
另外,你嘗試過什麼? – Epodax
正如我說,我想我會做A' 而(列表($鍵,$值)=每($陣列)){ \t $ individualKeys =爆炸(,$鍵 ''); \t的eval( 「\ $ newarray [ '」 內爆( 「 '] ['」,$ individualKeys)。 「 '] =' $值';」); \t}' –