Autor Zpráva
návštěvník
Profil *
Jak správě ošetřit tento kód aby v javascriptu nebyla chyba když je MSGINF_SEC 0?

setTimeout("SRA()",<?PHP MSGINF_SEC*1000?>)    ;

Není toto zbytečně moc dlouhé?

<?PHP echo O::MSGINF_SEC?O::MSGINF_SEC*1000:0;?>
DJ Miky
Profil
Od PHP 5.3 lze použit zkrácený zápis ternárního operátoru:
O::MSGINF_SEC*1000 ?: 0
Nicméně nechápu smysl tohoto zápisu, pokud bude O::MSGINF_SEC nula, bude výsledek tak jako tak nula. Není chyba jinde, např. v absenci echo v uvedené ukázce?
návštěvník
Profil *
DJ Miky:
v originálním kódu není výsledek nula ale na výstupu: '' (prázdný řetězec). Prostě se snažím opravit chyby v kódu, kvůli kterým nejede JS. Zkrácený zápis ternárního operátoru je pro mě novinkou. Dík
Joker
Profil
návštěvník:
v originálním kódu není výsledek nula ale na výstupu: '' (prázdný řetězec).

To je divné, nenapadá mě, jak by výsledkem operátoru násobení mohl být prázdný řetězec.

Ale zato mě teď napadá, že původní kód s tím výsledkem operátoru násobení vůbec nic nedělá. Chybí tam echo.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: