abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 22:00 | Komunita

    Vývojáři GNOME a Firefoxu zvažují ve výchozím nastavení vypnutí funkce vkládání prostředním tlačítkem myši. Zdůvodnění: "U většiny uživatelů tento X11ism způsobuje neočekávané chování".

    Ladislav Hagara | Komentářů: 3
    včera 15:22 | Nová verze

    Nástroj pro obnovu dat GNU ddrescue (Wikipedie) byl vydán v nové verzi 1.30. Vylepšena byla automatická obnova z disků s poškozenou čtecí hlavou.

    Ladislav Hagara | Komentářů: 0
    včera 12:55 | IT novinky

    Protokol IPv6 má již 30 let. První návrh specifikace RFC 1883 je z prosince 1995.

    Ladislav Hagara | Komentářů: 11
    včera 01:55 | IT novinky

    Byli vyhlášeni vítězové ocenění Steam Awards 2025. Hrou roku a současně nejlepší hrou, která vám nejde, je Hollow Knight: Silksong.

    Ladislav Hagara | Komentářů: 2
    4.1. 21:11 | Nová verze

    Byla vydána nová verze 26.0 linuxové distribuce Manjaro (Wikipedie). Její kódové jméno je Anh-Linh. Ke stažení je v edicích GNOME, KDE PLASMA a XFCE.

    Ladislav Hagara | Komentářů: 0
    3.1. 20:22 | Humor Ladislav Hagara | Komentářů: 52
    3.1. 19:11 | Zajímavý software

    Byl představen webový prohlížeč Brow6el, běžící v terminálu. Pro prohlížení webu je využit Chromium Embedded Framework, vyrendrovaná webová stránka je následně zobrazena v terminálu převodem na sixely pomocí knihovny libsixel. Brow6el se ovládá modálním klávesnicovým rozhraním, inspirovaném populárním textovým editorem Vim. Demonstrační video s ukázkou používání.

    NUKE GAZA! 🎆 | Komentářů: 7
    2.1. 23:00 | IT novinky

    Společnost Pebble představila (YouTube) chytré hodinky Pebble Round 2. S kulatým e-paper displejem, s open source PebbleOS a vydrží baterie přibližně dva týdny. Předobjednat je lze za 199 dolarů s plánovaným dodáním v květnu.

    Ladislav Hagara | Komentářů: 8
    2.1. 14:22 | Humor

    Na novoroční inauguraci starosty New Yorku Zohrana Mamdaniho bylo zakázáno si s sebou přinést Raspberry Pi anebo Flipper Zero. Raspberry Pi i Flipper Zero jsou explicitně uvedeny v seznamu zakázaných věcí jak na na veřejné pozvánce, tak i na oficiálních stránkách města.

    NUKE GAZA! 🎆 | Komentářů: 65
    2.1. 11:33 | Nová verze

    OpenTTD (Wikipedie), tj. open source klon počítačové hry Transport Tycoon Deluxe, byl vydán v nové stabilní verzi 15.0. Přehled novinek v seznamu změn a také na YouTube. OpenTTD lze instalovat také ze Steamu.

    Ladislav Hagara | Komentářů: 5
    Které desktopové prostředí na Linuxu používáte?
     (1%)
     (5%)
     (1%)
     (12%)
     (30%)
     (7%)
     (7%)
     (4%)
     (13%)
     (42%)
    Celkem 162 hlasů
     Komentářů: 3, poslední 4.1. 16:22
    Rozcestník

    Dotaz: PHP: Class not found, přestože třída je definována

    18.5.2012 17:04 Tatar
    PHP: Class not found, přestože třída je definována
    Přečteno: 286×
    Ahoj všem, dostal jsem se do zajímavého problému, se kterým si nějak nevím rady, resp. moc nerozumím jeho podstatě, takže by se mi hodil pohled jinýma očima.

    Situace je taková, že jsem dostal za úkol přestěhovat nějaké zprovozněné weby postavené na Typo3 z jednoho webserveru na druhý, přičemž původní server běží na Debianu s PHP 5.2 a na novém serveru je CentOS 5.3.

    Typo3 ve verzi 4.4.x a ještě i 4.5.x si s PHP 5.3 chvílemi nerozumí (je laděné pro PHP 5.2). Jeden z problémů na novém serveru se projevuje na přihlašovací obrazovce backendu: dole se zobrazuje chybové hlášení:

    Fatal error: Class 't3lib_div' not found in /var/lib/typo3/typo3_src-4.5.15/t3lib/error/class.t3lib_error_errorhandler.php on line 128

    Při hledání příčiny jsem zkusil těsně před tento řádek vložit následující výpis:

    echo (class_exists('t3lib_div') ? 'existuje' : 'NEexistuje');

    Po této úpravě se vypíše "existuje" a chybové hlášení se změní na:

    Fatal error: Exception thrown without a stack frame in Unknown on line 0

    Asi úplně nechápu, jak může být třída v určité části kódu definovaná, ale nedostupná. Co mi uniká?

    (případné rady k opravě Typo3 instalace beru taky, ale hlavní podstata dotazu je v té programátorské rovině).

    Předem díky za všechny rady!

    Odpovědi

    18.5.2012 17:06 Tatar
    Rozbalit Rozbalit vše Re: PHP: Class not found, přestože třída je definována
    Upřesňující doplnění: tím "před tento řádek" mám na mysli před řádek 128 (zmíněný v chybovém hlášení), na kterém je v kódu Typo3 toto volání:

    t3lib_div::sysLog($message, $logTitle, $severity);
    18.5.2012 19:12 Kit
    Rozbalit Rozbalit vše Re: PHP: Class not found, přestože třída je definována
    Typo3 neznám, asi by ta otázka měla směřovat spíš k autorům. Ovšem Google velmi rychle našel, že je to způsobeno chybnou kombinací error handleru a vyhození výjimky v destruktoru.

    Třída tedy existuje, ale je v ní chyba.

    Jen tak pro zajímavost: Na podobné testy můžeš využít funkci assert()
    assert("class_exists('t3lib_div');");
    Výhodou je, že ji v tom kódu můžeš klidně nechat, případně globálně zakázat (nebude se vyhodnocovat).
    19.5.2012 10:56 Tatar
    Rozbalit Rozbalit vše Re: PHP: Class not found, přestože třída je definována
    Díky za odpověď! I když jsem v otázce hodně zdůraznil to Typo3, tak mi šlo hlavně o tu programátorskou podstatu, jak může definovaná třída dělat takové blbiny (jinak opravy Typo3 milerád přenechám autorům a tohle konkrétně už nějaký ten pátek asi opravené mají).

    Pokud jde o ten dotaz do Google, myslel jsem, že to bylo únavou, ale ani dneska se mi nedaří se zeptat tak, abych se dozvěděl to, co jsi mi napsal. Můžeš mi prosím aspoň pro zajímavost říct, jaký dotaz jsi položil? O:-)
    19.5.2012 12:19 Kit
    Rozbalit Rozbalit vše Re: PHP: Class not found, přestože třída je definována
    Jistě. Ten dotaz zněl takto:
    "Exception thrown without a stack frame in Unknown"
    včetně uvozovek.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.