webForumDet fria alternativet
Logga in / Bli medlem

is_int

PHP

4 svar · 342 visningar · startad av Pedda

Medlem sedan juni 20006 031 inlägg
Trådstart#1

Har funderat ett tag på en sak men inte lyckats komma på svaret, så nu frågar jag er.

Varför fungerar inte

<?php

$text = "5555";

// Kolla om det är enbart siffror
if (is_int($text)) {
    echo "Innehåller enbart siffror\n";
} else {
    echo "Innehåller inte enbart siffror\n";
}

?>

Men däremot fungerar

<?php

$text = 5555;

// Kolla om det är enbart siffror
if (is_int($text)) {
    echo "Innehåller enbart siffror\n";
} else {
    echo "Innehåller inte enbart siffror\n";
}

?>

Alltså utan " runt talet?

Medlem sedan juni 20008 205 inlägg
#2

Det beror på att "55555" är en sträng (i detta fall, fem enskilda tecken) medan 55555 är ett heltal. is_int kollar typen hos värdet du skickar in, inte vad värdet innehåller.

Medlem sedan juni 20006 031 inlägg
#3

Ok, vad ska man använda för att kolla om en sträng innehåller enbart siffror då?

Medlem sedan juli 2001728 inlägg
#4

is_numeric

Medlem sedan juni 20006 031 inlägg
#5

Tack för svaren.

/r Det fungerade med is_numeric

392 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
128 ms — deklarationer (db)
128 ms — hämta statistik (db)
133 ms — hämta tråd, inlägg och bilagor (db)
128 ms — ändringar (db)