---
title: "Loopa igenom array i PHP och sätt in rubriker"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/76197-loopa-igenom-array-i-php-och-sätt-in-rubriker"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "m_soderlund"
published: "2003-05-07T10:02:55.000Z"
updated: "2003-05-08T08:54:40.000Z"
replies: 4
views: 264
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/76197-loopa-igenom-array-i-php-och-sätt-in-rubriker"
---

# Loopa igenom array i PHP och sätt in rubriker

## #1 — m_soderlund, 2003-05-07T10:02Z

Jag har denna array med info till en meny:

```
<?php

/**
* 
* @version $Id$
* @copyright 2003
*/
// BEGIN MENU_TEXT DEFINTION
// START
$menu_text['st-start'] 							 = 'Start';
$menu_text['st-contact']                         = 'Contact';
$menu_text['st-how']                             = 'How it works';
$menu_text['st-faq']                             = 'FAQ';
// JOIN
$menu_text['jo-joinform'] 						 = 'Join us!';
$menu_text['jo-agreement']                       = 'Terms & Conditions';
$menu_text['jo-privacy']                         = 'Privacy policy';
$menu_text['jo-antispam']                        = 'Anti-spam policy';
// MEMBERS
$menu_text['me-loginform'] 						 = 'Login';
$menu_text['me-logout']                          = 'Logout';
$menu_text['me-stats']                           = 'Statistics';
$menu_text['me-news']                            = 'News';
$menu_text['me-download']                        = 'Download Surfbar';
$menu_text['me-updateform']                      = 'Update profile';
$menu_text['me-forgotuserinfoform']              = 'Lost password?';
$menu_text['me-referralcenter']                  = 'Referral-tips';
$menu_text['me-help']                            = 'Help';
$menu_text['me-banners']                         = 'Banners';
$menu_text['me-history']                         = 'History';
$menu_text['me-deals']                           = 'Special deals';
$menu_text['me-deleteform']                      = 'Cancel account';
// ADVERTISING
$menu_text['ad-info'] 							 = 'Info';
$menu_text['ad-loginform']                       = 'Login';
$menu_text['ad-stats']                           = 'Statistics';
$menu_text['ad-updateform']                      = 'Update campaign';
$menu_text['ad-buyadvertising']                  = 'Buy advertising';
$menu_text['ad-benefits']                        = 'Benefits';
$menu_text['ad-pricing']                         = 'Pricing';
$menu_text['ad-buybanners_agreement']            = 'Advertising agreement';

?>
```

Jag använder denna kod för att loopa igenom arrayen och skapa länkar:

```
foreach($menu_text as $key => $val) {
   $menu_var = substr($key, 0, 2);
   $main_var = substr($key, 3);
   echo "<a href=\"index.php?menu_var=$menu_var&main_var=$main_var\">$val</a><br />";
}
```

Nu är det så att alla länkar skrivs ut med radbrytning mellan, men jag skulle vilja få med rubrikerna Start, Join, Members och Advertising också, samt ha flera radbrytningar mellan varje block av rubrik och dess länkar. Någon som har nån vettig idé?

Permalänk: https://www.webforum.nu/p/76197

## #2 — pimme, 2003-05-07T10:23Z

Om du tvunget ska ha din konfigfil uppbyggt på samma sätt.

```php
foreach($menu_text as $key => $val) {
   $menu_var = substr($key, 0, 2);
   $main_var = substr($key, 3);
   $tmp[$menu_var][$main_var] = $val;
}
foreach($tmp as $menu_var => $arr)
{
   foreach($arr as $main_var => $var)
   {
      echo "<a href=\"index.php?menu_var=$menu_var&main_var=$main_var\">$val</a><br />";
   }
}
```

Annars skulle jag föreslå att du gör om konfigfilen till att se ut så här:
$menu_text\['st'\]\['start'\] = ...
osv.
Och bara köra den sista foreachloopen jag skrev.

Koden är otestad, men jag tror att om den inte funkar så fattar du ungefär hur du ska göra.  ;)

Permalänk: https://www.webforum.nu/p/1039918

## #3 — m_soderlund, 2003-05-07T11:55Z

Oki doki, tack. \*hm, funderar\*

Permalänk: https://www.webforum.nu/p/1039999

## #4 — Matte, 2003-05-07T20:44Z

Du skulle kunna göra så här:

```
$rubriker = array('st'=>'START', 'jo'=>'JOIN', 'me'=>'MEMBERS', 'ad'=>'ADVERTISING');

$tmp = "";

foreach($menu_text as $key => $val) {

   $menu_var = substr($key, 0, 2);
   $main_var = substr($key, 3);
   
   if ($tmp != $menu_var) {
      $tmp = $menu_var;
      echo "<h3>{$rubriker[$tmp]}</h3>\n";
   }
   
   echo "<a href=\"index.php?menu_var=$menu_var&main_var=$main_var\">$val</a><br />";

}
```

Permalänk: https://www.webforum.nu/p/1040527

## #5 — m_soderlund, 2003-05-08T08:54Z

Matte: my man. Det där verkar ruggigt bra. Tack!

Permalänk: https://www.webforum.nu/p/1040769

---

Tråden på webben: https://www.webforum.nu/amne/php/76197-loopa-igenom-array-i-php-och-sätt-in-rubriker
