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í
×
    dnes 02:22 | Nová verze

    V programovacím jazyce Go naprogramovaná webová aplikace pro spolupráci na zdrojových kódech pomocí gitu Forgejo byla vydána ve verzi 15.0 (Mastodon). Forgejo je fork Gitei.

    Ladislav Hagara | Komentářů: 1
    dnes 01:11 | Pozvánky

    Současně se SUSECON 2026 proběhne příští čtvrtek v Praze také komunitní Open Developer Summit (ODS) zaměřený na open source a openSUSE. Akce se koná ve čtvrtek 23. 4. (poslední den SUSECONu) v Hilton Prague (místnost Berlin 3) a je zcela zdarma, bez nutnosti registrace na SUSECON. Na programu jsou témata jako automatizace (AutoYaST), DevOps, AI v terminálu, bezpečnost, RISC-V nebo image-based systémy. Všichni jste srdečně zváni.

    lkocman | Komentářů: 1
    včera 15:44 | Humor

    Český úřad zeměměřický a katastrální zavedl u anonymního nahlížení do katastru nemovitostí novou CAPTCHA ve formě mapové puzzle: nepřihlášení uživatelé musí nově správně otočit devět dlaždic v 3x3 poli tak, aby dohromady daly souvislý obrázek výseče reálné mapy, přičemž na to mají pouze jeden časově omezený pokus. Test je podle uživatelů i odborníků příliš obtížný a na sociálních sítích pochopitelně schytává zaslouženou kritiku a

    … více »
    » FIDESZ🧡! « | Komentářů: 18
    včera 15:33 | Nová verze

    Byla vydána verze 1.95.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | Zajímavý software

    Mozilla prostřednictvím své dceřiné společnosti MZLA Technologies Corporation představila open-source AI klienta Thunderbolt. Primárně je určený pro firemní nasazení.

    Ladislav Hagara | Komentářů: 0
    včera 14:00 | IT novinky

    Firma Cal.com oznámila, že přesouvá svůj produkční kód z otevřeného do uzavřeného repozitáře z důvodu bezpečnostního rizika umělé inteligence, která prý dokáže vyhledávat a zneužívat zranitelnosti rychleji, než by je jejich vývojářský tým stíhal opravovat. Zároveň zveřejnila samostatnou, open-source verzi Cal.diy pod licencí MIT, ovšem bez řady původních funkcí. O tom, zda je toto opatření rozumné, existují pochyby. … více »

    » FIDESZ🧡! « | Komentářů: 6
    včera 13:55 | Nová verze

    Vývojáři KDE na Mastodonu oznámili vydání balíku aplikací KDE Gear 26.04. Přehled novinek i s náhledy a videi v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    15.4. 23:00 | Nová verze

    Kryptografická knihovna OpenSSL byla vydána v nové verzi 4.0. Přehled změn v souboru CHANGES.md na GitHubu. Odstraněna byla podpora SSLv2 Client Hello a SSLv3. Ve výchozím nastavení byla zakázána podpora odmítnutých eliptických křivek v TLS dle RFC 8422. Přibyla například podpora Encrypted Client Hello (ECH, RFC 9849).

    Ladislav Hagara | Komentářů: 0
    15.4. 20:55 | Komunita

    curl up 2026, tj. setkání vývojářů a uživatelů curlu, proběhne opět v Praze. O víkendu 23. a 24. května v Pracovně.

    Ladislav Hagara | Komentářů: 0
    15.4. 15:55 | IT novinky

    Aplikace pro ověřování věku uživatelů on-line platforem je technicky hotová a brzy bude k dispozici pro občany EU, oznámila dnes předsedkyně Evropské komise Ursula von der Leyenová. Půjde podle ní o bezplatné a snadno použitelné řešení, které pomůže chránit děti před škodlivým a nelegálním obsahem. Aplikace bude podle ní fungovat na jakémkoli zařízení a bude zcela anonymní.

    Ladislav Hagara | Komentářů: 15
    Které desktopové prostředí na Linuxu používáte?
     (14%)
     (8%)
     (1%)
     (12%)
     (30%)
     (3%)
     (6%)
     (2%)
     (15%)
     (25%)
    Celkem 1345 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: Problém s vrácením dat z class v php

    22.11.2013 00:54 David
    Problém s vrácením dat z class v php
    Přečteno: 846×
    Ahoj. Chtěl bych se zeptat, když v metodě uvnitř třídy "class1" mám return new class2(), a class2() mi vrací data pomocí __toString(), tak vše funguje, jenže pokud potřebuji jít dál, a uvnitř class2() dám return new class3() tak přesto že vracím zase v class3() data pomocí __toString(), do class1 se už nedostanou. Poradí někdo?

    Odpovědi

    22.11.2013 05:47 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Problém s vrácením dat z class v php
    Stačí s tím objektem zacházet jako se stringem, například zřetězit s prázdným stringem.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    Tarmaq avatar 22.11.2013 09:26 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: Problém s vrácením dat z class v php
    Anebo pouzit strval(). Vysledek by mel vypadat nejak takhle:
    class class2
    {
      private $foo;
      function __construct()
      {
        $this->foo = new class3;
      }
      function __toString()
      {
        return strval($this->foo);
      }
    }
    Don't panic!
    22.11.2013 09:55 David
    Rozbalit Rozbalit vše Re: Problém s vrácením dat z class v php
    Zrovna tady jsem se dočetl, že tvé řešení není "správné". Metoda __toString() nemá vracet proměnné ale má volat metody :-( A řádek private $foo; tam taky nemá být... Tak jak to tedy opravdu je?

    PS: Jak amatér s rozbitou držkou domů se vrátil, když učil orla létat :-D
    22.11.2013 10:20 Kit
    Rozbalit Rozbalit vše Re: Problém s vrácením dat z class v php
    Četl jsi to ze špatného zdroje a navíc jsi to i špatně pochopil.
    22.11.2013 10:24 David
    Rozbalit Rozbalit vše Re: Problém s vrácením dat z class v php
    No na 99% jsi to psal ty, nemůžu to teď najít..
    Tarmaq avatar 22.11.2013 10:26 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: Problém s vrácením dat z class v php
    tusim ze mas na mysli tohle, je to tak?
    Don't panic!
    22.11.2013 12:09 David
    Rozbalit Rozbalit vše Re: Problém s vrácením dat z class v php
    tusim ze mas na mysli tohle, je to tak?
    Ano, tam jsem to četl...
    Tarmaq avatar 22.11.2013 12:16 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: Problém s vrácením dat z class v php
    A muzes tedy citovat? Nebo zkopirovat Link daneho prispevku a vlozit ho sem?
    Don't panic!
    22.11.2013 12:26 David
    Rozbalit Rozbalit vše Re: Problém s vrácením dat z class v php
    Sorry to není ono, ale to jsem taky četl, bylo tam něco ve smyslu, že proměnné v class nejsou uložiště a tak by měli vracet přímo výsledek a být volány až když jsou potřeba. A ty proměnné když nejsou definovány tak se tam nepíšou. Ale četl jsem toho hodně a nevím kde to bylo a mimo jiné tohle mi uvízlo v hlavě...
    22.11.2013 12:50 Kit
    Rozbalit Rozbalit vše Re: Problém s vrácením dat z class v php
    Zdá se, že jsi tu větu vytrhl z kontextu. Zřejmě jsem někde psal o anemickém doménovém modelu, který z objektu dělá úložiště. Možná jsi to zkombinoval s jiným mým výrokem o normalizaci třídy, že její instanční proměnné by neměly být konglomeráty, ale atomické hodnoty, které se v metodě __toString() teprve spojí do požadovaného výstupu.
    Josef Kufner avatar 22.11.2013 12:02 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Problém s vrácením dat z class v php
    __toString vrací vždy obyčejný string. Jak k němu dojde, je celkem jedno, jen by ta metoda neměla mít žádné side effecty, tedy jedno zavolání a libovolný počet zavolání musí vyjít nastejno.

    Ten kousek kódu je dobře, jen by místo strval bylo lepší použít přetypování na string: return (string) $this->foo;
    Hello world ! Segmentation fault (core dumped)
    Tarmaq avatar 22.11.2013 12:18 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: Problém s vrácením dat z class v php
    Ten kousek kódu je dobře, jen by místo strval bylo lepší použít přetypování na string: return (string) $this->foo;
    Mohl bys prosim nejak podlozit, v cem je to lepsi? IMHO obe veci delaji uplne tu samou vec. Spis je to o osobnich preferencich.
    Don't panic!
    Josef Kufner avatar 22.11.2013 12:29 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Problém s vrácením dat z class v php
    Rozdíl je v rychlosti. Přetypování ušetří volání funkce a výsledek je přitom zcela stejný. Pokud by to bylo v nějaké často používané funkci, což docela často bývá případ různých pomocných formátovacích udělátek, může to zvednout výkon aplikace o pár procent.
    Hello world ! Segmentation fault (core dumped)
    Tarmaq avatar 22.11.2013 12:30 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: Problém s vrácením dat z class v php
    Vlastne existuje duvod pro pouziti strval() misto (string). Je hned na prvni pohled jasne, co je castovano a clovek tak nemusi resit napr. precedenci operatoru..
    Don't panic!
    Josef Kufner avatar 22.11.2013 12:34 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Problém s vrácením dat z class v php
    Důvod, proč strval existuje, je funkce array_map a jí podobné.

    "strval(blabla)" a "(string)(blabla)" vyjde z pohledu čitelnosti i náročnosti psaní úplně na stejno.
    Hello world ! Segmentation fault (core dumped)
    22.11.2013 12:52 potato
    Rozbalit Rozbalit vše Re: Problém s vrácením dat z class v php
    Z pohledu čitelnosti je zápis jako volání funkce určitě lepší. Je v kódu
    (a)(b)(c)
    - a i b typ, c proměnná

    - a typ, b funkce, c proměnná

    - a funkce vracející funkci, b funkce, c proměnná

    nebo je to ještě nějak jinak?
    22.11.2013 15:22 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Problém s vrácením dat z class v php

    Ej, to je extrém pomíjející fakt, že máme máme nějaké základní typy, klíčová slova apod. a že uživatelské typy také pojmenováváme dle nějakých zásad.

    Osobně klasické přetypování ve stylu 'C' je pro mně to nejčitelnější (, co přesně dělá interpret PHP u jednotlivých zápisů nevím).

    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    Josef Kufner avatar 22.11.2013 17:08 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Problém s vrácením dat z class v php
    Před proměnné se píše dolar, takže to je trošku jednodušší. Navíc podpora anonymních funkcí v PHP je taková trošku polovičatá, takže si s tímhle neporadí ani samotný interpret. Tenhle zápis je jedině trojité přetypování (PHP 5.3 a starší, jaké novinky jsou v PHP 5.5 jsem nezkoumal moc podrobně, ale prý se to trochu zlepšilo).
    Hello world ! Segmentation fault (core dumped)

    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.