---
title: "if-sats fråga ?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/68943-if-sats-fråga"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Pellefant"
published: "2003-02-21T09:15:19.000Z"
updated: "2003-02-21T10:41:27.000Z"
replies: 3
views: 245
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/68943-if-sats-fråga"
---

# if-sats fråga ?

## #1 — Pellefant, 2003-02-21T09:15Z

Hej!

Jag har denna kod.  :)

$frekvens läses in från en textfil med: 
$frekvens = fread($open_file, filesize($filename3)); 
(så jag antar att den räknas som en char?)

Mitt problem är att om $frekvens är en siffra, tex 4, så blir $nrDaysLeft 7 och inte 4 såsom dig bör. :(

(om $frekvens är en veckodag, då funkar det, då får $nrDaysLeft 7)

```
if($frekvens == "Monday" || "Tuesday" || "Wednesday" || "Thursday" || "Friday" || "Saturday" || "Sunday"){
$nrDaysLeft=7;
}

else if($frekvens == 1 || 2 || 3 || 4 || 5 || 6 || 7 || 8 || 9 || 10 || 11 || 12 || 13 || 14){
$nrDaysLeft=$frekvens;
}
```

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

## #2 — sanke, 2003-02-21T09:41Z

\<?if(!is_numeric($frekvens)){ 
	$nrDaysLeft=7;
}
else if($frekvens == 1 \|\| 2 \|\| 3 \|\| 4 \|\| 5 \|\| 6 \|\| 7 \|\| 8 \|\| 9 \|\| 10 \|\| 11 \|\| 12 \|\| 13 \|\| 14){
$nrDaysLeft=$frekvens;
}?\>
\<?=$nrDaysLeft?\>

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

## #3 — Matte, 2003-02-21T09:52Z

När man hämtar från textfiler kan det ibland komma med lite dolda tecken som kan stöka till det vid jämförelser. Dessa tecken kan man rensa bort med trim().

```
$frekvens = trim(fread($open_file, filesize($filename3)));
```

 
Sen känner jag mig tveksam till dina if-satser. Som jag har lärt mig, och har heller inte sett något annat, så ska du skriva:

```
if($frekvens == "Monday" || $frekvens == "Tuesday" || $frekvens == "Wednesday" ...){
```

 
Själv skulle jag gjort så här:

```
$days = array("Monday", "Tuesday", "Wednesday", "Thursday",  "Friday", "Saturday", "Sunday");
$numbers = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14);

$frekvens = trim(fread($open_file, filesize($filename3))); 

if (in_array($frekvens, $days)) {
   $nrDaysLeft=7;
} elseif (in_array($frekvens, $numbers)) {
   $nrDaysLeft=$frekvens;
}
```

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

## #4 — Pellefant, 2003-02-21T10:41Z

Tack för hjälpen båda, nu verkar det funka. Tog Mattes lösning denna gången.

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

---

Tråden på webben: https://www.webforum.nu/amne/php/68943-if-sats-fråga
