---
title: "Räkna i array"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/159721-räkna-i-array"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Uffe82"
published: "2007-04-28T15:34:04.000Z"
updated: "2007-04-28T17:54:37.000Z"
replies: 3
views: 354
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/159721-räkna-i-array"
---

# Räkna i array

## #1 — Uffe82, 2007-04-28T15:34Z

Är helt seg nu..

Hur kan jag göra för att jämföra en array med typ dessa värden

vinst
förlust
förlust
förlust
oavgjord
oavgjord
vinst
vinst
vinst
vinst

resultatet jag vill åt är

\--- Antalet vinster/oavgjorda/förluster i rad 

snabba svar önskas.. tack!!

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

## #2 — Pedda, 2007-04-28T15:52Z

För att räkna ihop så kan man ju använda array_count_values()
Men om du bara vill ha hur många som är i rad så måste man nog loopa igenom och kolla.

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

## #3 — Uffe82, 2007-04-28T15:58Z

Hur

Hur skall jag loopa igenom då?

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

## #4 — Pedda, 2007-04-28T17:54Z

Ok, tog ett tag men nu är det paus i hockyn. ;)

Följande kod ger resultatet:
Vinster i rad - 4 st
Oavgjorda i rad - 2 st
Förluster i rad - 3 st

Antar att det är något sånt du tänkt dig. Alltså det högsta antalet vinster i rad o.s.v?

```php
<?php 
// array för test
$arr = array('vinst', 'förlust', 'förlust', 'förlust', 'oavgjord', 'oavgjord', 'vinst', 'vinst', 'vinst', 'vinst');

// max antal
$vinst = 0;
$oavgjord = 0;
$forlust = 0;

// håll reda på sista värdet när vi loopar
$sist = '';

// intern räknare
$i = 0;

foreach($arr as $a) {
	switch ($a) {
	case 'vinst':
    	if($sist == 'vinst') {
			$i++;
			if($i > $vinst) {
				$vinst = $i;
			}
		} else {
			$i = 1;
			$sist = 'vinst';
		}
    break;
	case 'oavgjord':
    	if($sist == 'oavgjord') {
			$i++;
			if($i > $oavgjord) {
				$oavgjord = $i;
			}
		} else {
			$i = 1;
			$sist = 'oavgjord';
		}
    break;
	case 'förlust':
    	if($sist == 'förlust') {
			$i++;
			if($i > $forlust) {
				$forlust = $i;
			}
		} else {
			$i = 1;
			$sist = 'förlust';
		}
    break;
	}
}

echo "Vinster i rad - $vinst st<br />";
echo "Oavgjorda i rad - $oavgjord st<br />";
echo "Förluster i rad - $forlust st<br />";
?>
```

Finns säkert enklare sätt att göra det på, men det är vad jag kommer på just nu.

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

---

Tråden på webben: https://www.webforum.nu/amne/php/159721-räkna-i-array
