---
title: "Roten ur"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/148114-roten-ur"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "donkey"
published: "2006-06-15T21:27:25.000Z"
updated: "2006-06-15T22:04:32.000Z"
replies: 5
views: 708
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/148114-roten-ur"
---

# Roten ur

## #1 — donkey, 2006-06-15T21:27Z

Har en variabel ($antal) som jag skulle vilja ta ruten ur och se om svaret är ett heltal och på något sätt integrera det i en if-sats, ex

om roten ur $antal är ett heltal visas 'Ok' annars visas 'Fel'.
Har klurat fram och tillbaka, men får inte riktigt till det, förslag?

**Edit:** Okej, roten ur får jag med hjälp av sqrt(), men problemet kvarstår hur jag ska se om detta är ett heltal eller inte...

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

## #2 — aron, 2006-06-15T21:35Z

Jag kan inget om PHP men jag gissar:

Använd denna funktion för att räkna ut roten: 
<http://se2.php.net/manual/en/function.sqrt.php>

Och denna för att kolla resten när du delar med 1(edit: ska vara lika med 0):
<http://se2.php.net/manual/en/function.fmod.php>

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

## #3 — donkey, 2006-06-15T21:38Z

jag var mer inne på funktionen is_int... någon annan som vet?

Fortsätter prova mej fram...   :p

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

## #4 — Matte, 2006-06-15T21:51Z

is_int() ger sant på 1 men falskt på '1', så jag skulle rekommendera ett regexp:

```php
if (preg_match("/^[1-9][0-9]*$/", $var)) {
   // Är heltal
}
```

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

## #5 — aron, 2006-06-15T21:51Z

Du måste väl använda en variabel som inte är en Integer för att ta roten ur på den, annars så får du alltid heltal som svar (om det finns en sån roten ur funktion). Jag tror inte att det omvandlas till en heltals variabel bara för att dess värde är ett heltal.

Så här tänker alltså jag: (edit funkar, jag lyckades testa :) )

```php
<?php
$x = 9;
if (fmod(sqrt($x), 1) == 0) {
   echo "True";
} else {
   echo "False";
}
?>
```

edit: Det funkade inte med %

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

## #6 — donkey, 2006-06-15T22:04Z

kung Matte! Fungerar klockrent, tack!

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

---

Tråden på webben: https://www.webforum.nu/amne/php/148114-roten-ur
