Autor Zpráva
kachnak
Profil *
zdravim ako spravit podmienku
if premenna je cislo
to znamena ze bude ignorovat ako nieje premenna bude z pismen dikes
qwett
Profil *
http://cz.php.net/manual/cs/function.is-numeric.php

ale ja bych to proste udelal tak ze bych zjistil jestli promena neni vetsi jak nula...

$promenna>0

pokud mas zaporne cisla tak das $promenna>-9999999999999 napriklad :D
qwett
Profil *
if ($promena>0){echo " promenna je cislo a je vetsi jak nula"; }
Ero
Profil *
qwett
nasledovne tiez vypise " promenna je cislo a je vetsi jak nula"
$promena = '1 kachna 2 strely';
if ($promena>0){echo " promenna je cislo a je vetsi jak nula"; }

takze na to pozor
tiso
Profil

/*
* Returns TRUE if $string represents numeric value ($_POST data etc.)
*
* @param string string Tested string
*
* @author tiso (tsovis@centrum.sk)
*/

function is_int_string ( $string )
{
return (( $string."0" == $string*10 ) AND !is_bool( $string ) AND !stristr( $string, "true" ) AND !stristr( $string, "false" )) ? TRUE : FALSE;
}
krteczek
Profil
a co:


if(is_numeric($promenna))
{
echo 'proměnná '. $promenna . ' je číslo';
}
else
{
echo 'proměnná ' . $promenna . ' není číslo';
}

krteczek
djlj
Profil
kachnak
if(intval($cislo))
Ero
Profil *
tiso
smiem vediet vyznam tvojej funkcie?
tiso
Profil
Ero
Rieši také veci ako true/false, stringy ako v Tvojom príklade, rôzne formáty čísel (1E6)...
Mal som 2 verzie, neviem ktorá je toto, v jednej bolo pár podmienok navyše...
Ero
Profil *
tiso
hmm takze tvoja funkcia vracia true ked je to aj retazec?
na to moje by som spravil neco ako toto:

function is_int_by_ero($int)
{
return is_bool($int) ? FALSE : (string)(int)$int === (string)$int;
}
Ero
Profil *
ta skontroluje ci sa neni nahodou cislo (konkretne integer) v stringu... ale iba to cislo.. cez '1nieco' by nepreslo zatial co 1 alebo '1' prejde
tiso
Profil
Ero
Tá Tvoja funkcia funguje... Hold operátor identity mi nenapadlo použiť, pretypovávanie som skúšal viackrát...
Ero
Profil *
tiso
no ono ked sa to tak vezme by to fungovalo aj bez toho operatora, len s obycajnym porovnavanim (kedze sa to cele pretypuje na string) ale aspon je vidiet ze porovname nielen hodnotu ale aj typ
a co sa tyka pretypovania, pride mi to jednoduchsie nez pouzivanie nejakych funkcii... ovsem treba podoktnut ze toto riesenie je obmedzene
K.
Profil *
Není to jednodušší takhle?

$int = 123;
if (preg_match("/^-?\d+$/",$int)){
echo $int." je cislo";
}else{
echo $int." neni cislo";
}
24k
Profil *
Jste fakt blazni, uz se predhanite kdo napise krkolomnejsi funkci viz TISO nebo nesmyslne REG. vyrazy...

je na to funkce is_numeric() a tim to hasne.
tiso
Profil
24k
pokiaľ Ti nevadí toto:
is_numeric(2E5): 1
is_numeric("2E5"): 1
alebo pokiaľ potebuješ celé čísla a nevadí Ti toto:
is_numeric(2.5): 1
is_numeric("2.5"): 1
Toto téma je uzamčeno. Odpověď nelze zaslat.

0