Hogyan lehet if () tagot csinálni, php változókból?
Van egy adatbázisom(mysql), amiben tárolok ilyen alakban dokumentumokat: >15 ; =8 stb.. stb..
A PHP fájlban elvégzek egy műveletet, amelynek az eredményét szeretném összehasonlítani ezekkel az adatokkal.
$muvelet = $adat["muvelet"] // Ennek az egésznek az értéke: >15
$szamitas = 8;
azt szeretném elérni, hogyha igaz a relációs művelet, akkor írja ki, hogy "igaz". Ha nem igaz, akkor pedig "nem igaz".
Előre is köszönöm a válaszokat!
$result = eval(
.. sprintf("return %d %s;", $szamitas, $muvelet)
);
if ($result === true) print "Igaz";
else print "Hamis";
Megjegyzés: KIB_SZOTT VESZÉLYES DOLOG AZ EVAL!
Köszönöm szépen!
Miért ilyen veszélyes? Illetve mire nézve?
Értem, köszi!
Viszont nem működik = jellel. Ott hibát ír ki:
Parse error: syntax error, unexpected '=', expecting ';' in ****.php(194) : eval()'d code on line 1
Gányolást az evalra érted, vagy ahogy én programozok? :D
Valahol én még azt olvastam, hogy = jelentése egyenlő (számoknál)
== pedig azonos (karaktereknél)
Egészen eddig ebben a hitben voltam :O
Bocsánat az amatőrködés miatt!
Viszont tört számoknál már tényleg nem működik a dolog.
"Valahol én még azt olvastam, hogy = jelentése egyenlő (számoknál)
== pedig azonos (karaktereknél) "
Elő kell venni a hivatalos dokumentációt.
Az összehasonlító operátoroknál sehol nem találsz = jelet:
csak az értékadásnál:
A topiknyitó kérdésedre: tehát vannak eltárolt összehasonlító operátor - érték párosaid:
">15"
"==8"
ezeket bontsd szét operátor - érték párokra (preg_match függvény a barátod), majd az operátort használd fel egy többágú szelekcióban - például így:
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!