---
title: "Behandla sista posten i array annorlunda"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/159363-behandla-sista-posten-i-array-annorlunda"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Helmertz"
published: "2007-04-17T11:16:57.000Z"
updated: "2007-04-17T12:01:56.000Z"
replies: 6
views: 420
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/159363-behandla-sista-posten-i-array-annorlunda"
---

# Behandla sista posten i array annorlunda

## #1 — Helmertz, 2007-04-17T11:16Z

Hur gör jag för att få restultatet (ing1, ing2, ing3) istället för (ing1, ing2, ing3, )?

```php
function printIngredients($dishId){
	$ingSql = "SELECT * FROM mp_ing INNER JOIN mp_dishing ON mp_ing.ingId = mp_dishing.ingId WHERE mp_dishing.dishId = '".$dishId."' ORDER BY mp_ing.name ASC";
	$ingQuery = mysql_query($ingSql);
	while($ing = mysql_fetch_array($ingQuery)){
		$ingredients .= $ing['name'].", ";
	}

	$ings = '('.ucfirst($ingredients).')';
	return $ings;
}
```

Ifall någon har spontana kommentarer på övriga koden så skadar det inte att dela med sig ;) mvh

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

## #2 — nitro2k01, 2007-04-17T11:21Z

Kolla om strängen är tom.

```php
    if ($ing['name'])
        $ingredients .= $ing['name'].", ";
```

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

## #3 — aasah, 2007-04-17T11:33Z

nitro, tänker du inte fel nu? Så länge det finns en rad att lägga till, är namn väl inte tom?

Jag skulle (nog) ha gjort så här.

```php
function printIngredients($dishId){
   $ingSql = "SELECT * FROM mp_ing INNER JOIN mp_dishing ON mp_ing.ingId = mp_dishing.ingId WHERE mp_dishing.dishId = '".$dishId."' ORDER BY mp_ing.name ASC";
   $ingQuery = mysql_query($ingSql);
   $antal = mysq_num_rows($ingQuery);
   $i = 1;
   while($ing = mysql_fetch_array($ingQuery)){
      if ($i == $antal)
         $next = "";
      else $next = ", ";
      $ingredients .= $ing['name'].$next;
      $i++;
   }

   $ings = '('.ucfirst($ingredients).')';
   return $ings;
}
```

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

## #4 — Matte, 2007-04-17T11:41Z

Annars går det göra så här:

```php
    $ingredients = array();
    while($ing = mysql_fetch_array($ingQuery)){
        $ingredients[] = $ing['name'];
    }
    $ingredients = implode(", ", $ingredients);
```

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

## #5 — Pedda, 2007-04-17T11:42Z

Jag skulle nog bara loopa in dom i en array och sen köra implode när allt var klart.
$myString = implode(',', $myArray);

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

## #6 — Pedda, 2007-04-17T11:43Z

Jaha, Matte hann före ;)

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

## #7 — aasah, 2007-04-17T12:01Z

**Smart**, Matte och Pedda!

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

---

Tråden på webben: https://www.webforum.nu/amne/php/159363-behandla-sista-posten-i-array-annorlunda
