2012-12-22 13 views
0

我的陣列是國家的名單,國家代碼是準確的。PHP排序多維數組到cetegorized HTML列表

$nazioni = array(
    'all' => array(
     'ad','ae','af','ag','al','am','ao','ar','at','au','az','ba','bb','bd', 
     'be','bf', etc... ...'zw', 
    ), 

    'europa' => array(
     'ad','al','am','at','az','ba','be','bg','by','ch','cy','cz','de','dk', 
     'ee','es','fi','fr','gb','ge','gr','hr','hu','ie','is','it','kz','li', 
     'lt','lu','lv','mc','md','me','mk','mt','nl','no','pl','pt','ro','rs', 
     'ru','se','si','sk','sm','tr','ua','va', 
    ), 

    'asia' => array(
     'ae','af','am','az','bd','bh','bt','bn','cn','cy','ge','id','il','in', 
     'iq','ir','jo','jp','kg','kh','kp','kr','kw','kz','la','lb','lk','mm', 
     'mn','mv','my','np','om','ph','pk','ps','qa','ru','sa','sg','sy','th', 
     'tj','tl','tm','tr','uz','vn','ye', 
    ), 

etc... 

此列表與各大洲一樣,也將包含地中海或中東等地區,這意味着值將在類別中重複。即使是基本的亞洲和歐洲類別也會包含重複值,我會使用每個值創建一個鏈接。

我在重新aranging我的數組如何放置非常靈活,但它甚至有可能採取這樣的列表,並作出明確安排表沒有重複值的開銷?或者這個開銷太小,這不是問題?

目前我安排它用簡陋的foreach循環,因爲這樣的:

echo '<li>'.Lang::line('nations.europa')->get().'</li>'; 
    foreach($nazioni['europa'] as $n) { 
     echo '<li>'.Filtra::uri(Lang::line('nations.'.$n)->get(), $uri, 1, $n).'</li>'; 
    } 

的FILTRA :: URI功能使得它的一個鏈接,我通過使用郎鍵值查找全國::來自Laravel框架的在線函數。基本。

我想要的到底是什麼是鏈接的分類列表。這個設計還沒有最終確定,但到目前爲止,返回的HTML看起來有點像這樣,我會把這些類別包裝在一些東西中,以便在稍後的階段更具交互性。也許可以使用DL,DT和DD標籤或從中選擇一個選項列表,但這並不重要。

<li>Europe</li> 
<li><a href="http://example.ex/en/+Andorra">Andorra</a></li> 
and same for all Europe countries... 

<li>Asia</li> 
<li><a href="http://example.ex/en/+United+Arab+Emirates">United Arab Emirates</a></li> 
and same for all Asian countries...... 

回答

1

是它甚至有可能採取這樣的列表,並作出明確安排表沒有重複值的開銷?或者這個開銷太小,這不是問題?

的開銷是非常小的 - 你會是怎樣的人(或未來的你)清潔和更容易閱讀代碼時理解