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 01:00 | Nová verze

Známý šifrovaný komunikátor Signal od verze 3.30.0 již nevyžaduje Google Play Services. Autoři tak po letech vyslyšeli volání komunity, která dala vzniknout Google-free forku LibreSignal (dnes již neudržovaný). Oficiální binárky jsou stále distribuované pouze přes Google Play, ale lze použít neoficiální F-Droid repozitář fdroid.eutopia.cz s nezávislými buildy Signalu nebo oficiální binárku stáhnout z Google Play i bez Google účtu

… více »
xm | Komentářů: 1
včera 23:14 | Nová verze

Po třech týdnech od vydání první RC verze byla vydána první stabilní verze 17.01.0 linuxové distribuce pro routery a vestavěné systémy LEDE (Linux Embedded Development Environment), forku linuxové distribuce OpenWrt. Přehled novinek v poznámkách k vydání. Dotazy v diskusním fóru.

Ladislav Hagara | Komentářů: 3
včera 17:28 | Bezpečnostní upozornění

Byly zveřejněny informace o bezpečnostní chybě CVE-2017-6074 v Linuxu zneužitelné k lokální eskalaci práv. Jde o chybu v podpoře DCCP (Datagram Congestion Control Protocol). Do linuxového jádra se dostala v říjnu 2005. V upstreamu byla opravena 17. února (commit). Bezpečnostní chyba byla nalezena pomocí nástroje syzkaller [Hacker News].

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

Společnost Valve vydala novou beta verzi SteamVR. Z novinek lze zdůraznit oficiální podporu Linuxu. Další informace o podpoře této platformy pro vývoj virtuální reality v Linuxu v diskusním fóru. Hlášení chyb na GitHubu.

Ladislav Hagara | Komentářů: 0
včera 06:00 | Nová verze

Po necelém roce od vydání verze 0.67 byla vydána verze 0.68 populárního telnet a ssh klienta PuTTY. Podrobnosti v přehledu změn. Řešeny jsou také bezpečnostní chyby.

Ladislav Hagara | Komentářů: 0
21.2. 21:32 | Nasazení Linuxu

Canonical představuje nejnovější verzi chytré helmy DAQRI s Ubuntu pro rozšířenou realitu. K vidění bude příští týden v Barceloně na veletrhu Mobile World Congress 2017.

Ladislav Hagara | Komentářů: 0
21.2. 21:31 | Pozvánky

Pro zájemce o hlubší znalosti fungování operačních systémů připravila MFF UK nový předmět Pokročilé operační systémy, v rámci něhož se vystřídají přednášející nejen z řad pracovníků fakulty, ale dorazí také odborníci ze společností AVAST, Oracle, Red Hat a SUSE. Tento předmět volně navazuje na kurz Operační systémy ze zimního semestru, ale pokud máte praktické zkušenosti odjinud (například z přispívání do jádra Linuxu) a chcete si

… více »
Martin Děcký | Komentářů: 6
21.2. 21:30 | Pozvánky

Czech JBoss User Group Vás srdečně zve na setkání JBUG v Brně, které se koná ve středu 1. března 2017 v prostorách Fakulty Informatiky Masarykovy Univerzity v místnosti A318 od 18:00. Přednáší Tomáš Remeš a Matěj Novotný na téma CDI 2.0 - New and Noteworthy. Více informací na Facebooku a na Twitteru #jbugcz.

mjedlick | Komentářů: 0
20.2. 23:45 | Zajímavý software

Na blogu Qt bylo představeno Qt 3D Studio. Jedná se o produkt dosud známý pod názvem NVIDIA DRIVE™ Design Studio. NVIDIA jej věnovala Qt. Jedná se o několik set tisíc řádků zdrojového kódu. Qt 3D Studio bude stejně jako Qt k dispozici jak pod open source, tak pod komerční licencí. Ukázka práce s Qt 3D Studiem na YouTube.

Ladislav Hagara | Komentářů: 10
20.2. 17:50 | Komunita

Nadace The Document Foundation (TDF) zastřešující vývoj svobodného kancelářského balíku LibreOffice slaví 5 let od svého oficiálního vzniku. Nadace byla představena 28. září 2010. Formálně byla založena ale až 17. února 2012.

Ladislav Hagara | Komentářů: 0
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (13%)
 (2%)
 (72%)
 (3%)
 (10%)
Celkem 688 hlasů
 Komentářů: 66, poslední včera 18:57
    Rozcestník

    Dotaz: Problém s autoloadem

    16.5.2012 20:38 Prosík
    Problém s autoloadem
    Přečteno: 492×

    Dobry vecer. Zkousim novou funkci v php ale nejak nefunguje jak by asi mela. Trida se porad naita i kdyz neexistuje. Mrkne na to prosim nekdo?

         function __autoload($class){
          
            if(class_exists($class))
               error("Class: $class Not Found!");
            else
               include_once(dirname(__FILE__).'/class/'.$class.'.php');
         }

    Odpovědi

    16.5.2012 20:55 Kit
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    A co kdybys to trochu zjednodušil?
    function __autoload($class){
       include(dirname(__FILE__).'/class/'.$class.'.php');
    }
    Funkce class_exists($class) se totiž pokouší třídu natáhnout. V autoloaderu nemá co pohledávat.
    16.5.2012 22:50 Prosík
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Pokud se snaží class_exists() třídu natáhnout tak je to špatně, máš pravdu, ale jak jinak můžu zjistit, jestli požadovaná class neexistuje a spustit nějakou chybovou funkci.. Díky
    16.5.2012 23:10 Kit
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Nejlépe nijak. Stačí zachytit chybu při neúspěšném natažení. Zjišťování existence třídy předem je zbytečné a zdržující. Autoloader musí být rychlý.
    17.5.2012 12:10 Prosík
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Na include v if jsem úplně zapoměl :-( To by se tím asi vyřešilo..

    Může mi někdo ještě objasnit tuto chybu, kterou vrací tento kód?

         class foo
         {
              public $convert;
              public function __construct()
              {
                   $this->convert = 'text';
              }
    
              public function __toString()
              {
                   return $this->convert;
              }
         }
    
         if(class_exists(foo))
         {
           echo "existuje";
         }
         else
         {
           echo "neexistuje";
         }
    
    
    Notice: Use of undefined constant foo - assumed 'foo' in /var/www/index.php on line 102 existuje
    
    Díky
    17.5.2012 12:23 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Problém s autoloadem
      if(class_exists('foo'))
    //vs
      if(class_exists(foo))
    
    …to musí být vidět i při rozumě vysvícené syntaxi :-)
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    17.5.2012 12:38 Kit
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Dotaz byl zodpovězen, proto se zeptám: Proč testuješ existenci třídy před vytvořením instance? Vždyť to děsně znepřehledňuje aplikaci a je to k ničemu. Tak to vůbec nebylo navrženo. Prostě tu instanci vytvoř a hotovo. O zbytek se postará ošetření chyb, které si můžeš upravit podle potřeby.

    Když otvíráš soubor funkcí fopen(), tak také předem netestuješ, zda ten soubor existuje. Prostě ho otevřeš a pak teprve zjistíš, jestli přitom náhodou nedošlo k chybě.
    Josef Kufner avatar 17.5.2012 02:02 Josef Kufner | skóre: 66
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Můžeš testovat, zda se povedl include. Tu chybu se však dozvíš o kousek později, protože se nepovede vytvořit instanci dané třídy.

    Pokud chceš selhat už v autoloadu, použij require namísto include.

    Pokud include neselže, ale třída i tak neexistuje (překlep v hlavičce třídy), projeví se to tak, že v logu bude chyba o neexistující třídě, ale nebude tam chyba z autoloaderu.
    Hello world ! Segmentation fault (core dumped)
    16.5.2012 22:59 Prosík
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    KITe, existuje nějaký ten __autoload nebo něco podobného i pro funkce? Díky
    16.5.2012 23:12 Kit
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Možná existuje, ale nevím o tom. Nikdy jsem to nepotřeboval a myslím si, že ani potřebovat nebudu. Objekty mi stačí.
    Josef Kufner avatar 17.5.2012 13:49 Josef Kufner | skóre: 66
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Teoreticky bys nic takového neměl vůbec potřebovat. A pokud máš pocit, že ano, předělej to na objekty – v budoucnu budeš rád.
    Hello world ! Segmentation fault (core dumped)
    17.5.2012 18:29 Prosík
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    No nevím proč psát 4x tolik kódu navíc a ještě si tak znepřehlednit kód. Pokud budu chtít vrátit z nějaké class text Výsledný text tak to napíšu na 20řádků
         class foo
         {
              public $convert;
    
              public function __construct()
              {
                   return 'Výsledný text';
              }
    
              public function __toString()
              {
                   return $this->convert;
              }
         }
    
         echo new foo();
    Pokud budu chtít vrátit z nějaké funkce text Výsledný text tak to napíšu na řádků 5
         function foo()
         {
              return 'Výsledný text';
         }
    
         echo foo();
    Tak že nějaký autoload na funkce by se mi fakt šikl..
    17.5.2012 18:42 Kit
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Problém je v tom, že neumíš psát objektově. Uvedený příklad je velmi primitivní a spíš nahrává obyčejné funkci, ale ani objektově to není dlouhé. Kromě toho máš tu objektovou verzi špatně.
    class foo {
        public function __toString() {
            return 'Výsledný text';
        }
    }
    
    echo new foo();
    Josef Kufner avatar 17.5.2012 21:16 Josef Kufner | skóre: 66
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Tak, tak. Jakmile pak dojde na složitější případy, tak se to bohatě vrátí, protože můžeš kód hezky rozdělit díky privátním metodám. Navíc pak není problém přidat nějaký ten rekurzivní algoritmus, aniž by se zabordelil globální jmenný prostor (můžeš použít hezké a krátké názvy metod).
    Hello world ! Segmentation fault (core dumped)
    20.5.2012 17:05 Prosík
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Co se ti na te class nelíbí? To co jsi mi opravil je možné jen u tohoto případu, když __toString() nedokáže předat žádný parametr. Navíc neexistuje způsob jak vypsat objekt bez použití __toString(). Čili __construct() musím použít vždy když chci dostat do class nějaké parametry z venku. Tak že s myslím, že jsem to měl dobře.
    Josef Kufner avatar 20.5.2012 17:10 Josef Kufner | skóre: 66
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Neměl ;-)
    Hello world ! Segmentation fault (core dumped)
    20.5.2012 17:18 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Mě jsi to blbě, konstruktor nic nevrací viz manuál - návratová hodnota je void (a obecně je to prostě tak). A v té class je úplně zbytečný.

    když __toString() nedokáže předat žádný parametr
    To by taky nedávalo smysl, tam předávat parametry.

    Navíc neexistuje způsob jak vypsat objekt bez použití __toString()
    Jakoukoliv metodou můžeš vypsat co chceš, o vypisování objektu bych nemluvil - není jasné co tím myslíš.

    Čili __construct() musím použít vždy když chci dostat do class nějaké parametry z venku
    Ano, pokud chceš objekt inicializovat, inicializuješ jej obvykle přes konstruktor, ale už asi nebude tak běžné mít členské proměnné public.

    Tak že s myslím, že jsem to měl dobře.
    Ne, bylo to špatně :) a pravděpodobně s nepochopením objektového programování…
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    20.5.2012 17:31 Prosík
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Konstruktor sice nic nevraci ale spusti automaticky kod uvnitr class ihned po vytvoreni instance. Pokud tedy vytvorim instanci typu
    echo new foo($pdo, $val)
    a nebudu pouzivat konstruktor tak by me zajimalo jak vy ta class mela vypadat.. Díky
    20.5.2012 18:47 Prosík
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    A najednou všichni mlčí...
    20.5.2012 19:13 Kit
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Asi mají něco jiného na práci. Zkus si mezitím najít nějakou vhodnou učebnici OOP.
    20.5.2012 19:39 Prosík
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Jak se jedna o kritiku jsou tu hned a jak se jedna o objasneni mají spoustu práce :-D
    20.5.2012 19:48 Kit
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Protože jsi stále nepochopil smysl OOP. Bereš to jako brzdu, ne jako přínos. Volíš tak primitivní příklady, že nemá smysl je řešit objektově ani ve funkci. Je jasné, že v tom případě vyjde objektové řešení nejdelší.

    K tématu: Pokud chceš zpracovat vstupní parametry při vytváření objektu, tak samozřejmě musíš napsat konstruktor. Můžeš ho i zdědit.
    20.5.2012 19:54 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Za ty dvě hodiny cos měl čas to nastudovat bys už to objasnění mohl napsat sám, ne? ;) Nespoléhej na to, že ti ostatní do hlavy namlátí to, co by si tam můžeš vložit sám.
    20.5.2012 20:27 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Konstruktor sice nic nevrací
    Pokud to víš, tak proč tam píšeš: return 'Výsledný text';

    spusti automaticky kod uvnitr class ihned po vytvoreni instance
    No, hlavně by ten kód měl sloužil k inicializaci instance…

    Takže to zopakuji: „Ano, pokud chceš objekt inicializovat, inicializuješ jej obvykle přes konstruktor…“, ovšem v tvém příkladu žádná inicializace nebyla, tedy je konstruktor zbytečný.

    echo new foo($pdo, $val) není zrovna typické využít, nebo dokonce nějaká výhoda. OOP je „kapánek“ o něčem jiném.

    a nebudu pouzivat konstruktor tak by me zajimalo jak vy ta class mela vypadat
    Vypisovat ti jak se dělá třeba tovární metoda či třída, jak se používají inicializační funkce a co je vlastně class, nemá v tomto stadiu vůbec význam, pokud nezačneš sám a to od píky…
    Pokud si myslíš, že OOP ti komplikuje život, tak krom toho, že je to tím, že tomu nerozumíš, tak OOP nepoužívej.

    A najednou všichni mlčí...
    Zameť si před vlastním prahem, tvé reakce taky nejsou zrovna šup-šup…
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    20.5.2012 21:16 Prosík
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Zameť si před vlastním prahem, tvé reakce taky nejsou zrovna šup-šup…
    To nebylo myšleno nijak zle.. ;)
    20.5.2012 22:51 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Taky nekřičím…
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    21.5.2012 14:46 Prosík
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Tak snad jsem to už udělal dobře akorát nevím který zápis je lepší
    class map{
       public $pdo;
       public function __construct($pdo){
          $this->pdo = $pdo;
       }
    
       public function __toString(){
          $pdo = $this->pdo;
          $result = false;
          $result .= '<ul id="menu">';
          foreach($pdo->query('SELECT * FROM `menu` WHERE `parent` = 0') as $row){
             $result .= '<li>'.$row['name'].'</li>';
             $result .= '</ul>';
          }
    
          return $result;
       }
    }
    
    echo New map($pdo);
    
    
    nebo tento zápis
    
    class map{
       public $str;
       public function __construct($pdo){
          $result = false;
          $result .= '<ul id="menu">';
          foreach($pdo->query('SELECT * FROM `menu` WHERE `parent` = 0') as $row){
             $result .= '<li>'.$row['name'].'</li>';
             $result .= '</ul>';
             $this->str = $result;
          }
       }
    
       public function __toString(){
          return $str;
       }
    }
    
    echo New map($pdo);
    
    Děkuji za info...
    21.5.2012 17:38 Kit
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Pokud by se v DB nacházela data od uživatele, máš zaděláno na XSS. Na výstupu používej htmlspecialchars().

    Zkus udělat něco mezi. Snad přitom pochopíš, co patří do konstruktoru (vytváříš objekt třídy Map) a co do prezentující metody. Ten objekt nejspíš bude obsahovat seznam položek získaných z DB ve formě pole.

    metoda __toString() bude tato data prezentovat, na toto pole tedy aplikuješ zmíněnou funkci htmlspecialchars() a obalíš příslušnými značkami HTML. To se dá udělat jedním příkazem.

    Když to tak rozdělíš, budeš to mít ještě kratší, ale hlavně se to bude chovat jako objekt.

    Je dobrým zvykem pojmenovávat třídy s velkým písmenem na začátku. Budeš si s námi (i s učebnicemi) lépe rozumět. Naopak operátor new se obvykle píše malými.
    21.5.2012 19:44 Prosík
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Jedná se o data které jsou soucasti webu, cili k nim user nema pristup.
    Když to tak rozdělíš, budeš to mít ještě kratší, ale hlavně se to bude chovat jako objekt.
    Teto vete vubec nerozumi jak to myslis. Hodne rad bych to mel kratsi ;)
    21.5.2012 20:51 Kit
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Dobrá, menu je menu, to si vytváříš sám, tak si tam nic špatného nenastrkáš. Snad.

    Osobně bych to napsal asi takto:
    <?php
    class Map{
      private $menu;
    
      public function __construct($pdo,$parent){
        $prep=$pdo->prepare('SELECT `name` FROM `menu` WHERE `parent` = ?;');
        $prep->execute(array($parent));
        $this->menu=$prep->fetchAll(PDO::FETCH_COLUMN, 0);
      }
    
      public function __toString(){
        return '<ul id="menu"><li>'.implode("</li>\n<li>",array_map('htmlspecialchars',$this->menu))."<li></ul>\n";
      }
    }
    
    echo new Map($pdo,0);
    Všimni si, že jsem v konstruktoru vytvořil objekt a zároveň ho naplnil daty. Můžeš a nemusíš udělat další metody, které přidají nebo odeberou další položky; metody, které to po změnách uloží zpět do DB apod.

    Metoda __toString() toto pole přemění na finální HTML. Pro názornost jsem tam vložil i funkci htmlspecialchars(), ale pokud je to jen menu, tak tam být nemusí.

    Doporučuji striktně oddělovat práci s databází a generování výstupu. Vyplatí se to.

    Všimni si, že jsem doplnil parametr $parent. Tím se sice konstruktor natáhl o 2 řádky, ale stal se obecnější.

    Bude se to chovat podivně, pokud menu bude prázdné, ale nechtělo se mi vymýšlet další redukční funkci - implode() snad postačí.
    21.5.2012 20:52 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Ty já ti nevím: „je nezralé jablko nebo zelený banán čerstvější zelenina?" 2> /dev/null
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    Josef Kufner avatar 22.5.2012 01:38 Josef Kufner | skóre: 66
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Ani jedno není dobře. Největší chybou je v obou případech motání všeho dohromady. Pokud máš v jedné metodě HTML značky a select, tak to téměř jistě máš blbě uspořádané.

    Další věc je, že napojování řetězců je pomalé. Tedy, pomalejší než echo.

    A proč připojuješ řetězec k booleanu? Přečti si něco o datových typech.
    class Map
    {
       private $result;
    
       public function query($pdo)
       {
          $this->result = $pdo->query('SELECT * FROM `menu` WHERE `parent` = 0');
       }
    
       public function echo()
       {
          echo "<ul class=\"menu\">\n";
          foreach($this->result as $row) {
             echo '<li>', $row['name'], "</li>\n";
          }
          echo "</ul>\n";
       }
    
       public function __toStrig()
       {
          ob_start();
          $this->echo();
          return ob_get_clean();
       }
    }
    
    $map = new Map();
    $map->query($pdo);
    $map->echo();
    
    Protože až budeš chtít nastavit parent, před dotázáním se databáze, uděláš to takle:
    class Map
    {
       private $result;
       private $parent = 0;
    
       public function setParent($parent)
       {
          $this->parent = $parent;
       }
    
       public function query($pdo)
       {
          $q = $pdo->prepare('SELECT * FROM `menu` WHERE `parent` = :parent');
          $q->bindParam(':parent', $this->parent, PDO::PARAM_INT);
          $this->result = $q->execute();
       }
    
       public function echo()
       {
          echo "<ul class=\"menu\">\n";
          foreach($this->result as $row) {
             echo '<li>', $row['name'], "</li>\n";
          }
          echo "</ul>\n";
       }
    
       public function __toStrig()
       {
          ob_start();
          $this->echo();
          return ob_get_clean();
       }
    }
    
    $map = new Map();
    $map->setParent(3);
    $map->query($pdo);
    $map->echo();
    
    Hello world ! Segmentation fault (core dumped)
    22.5.2012 10:25 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Tak.
    Ještě odstranit to 2> /dev/null a je to hotové :-).
    Je z toho i patrné, že __toStrig() nemusí být, tak důležité…
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    22.5.2012 14:14 Kit
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    __toStrig() je jen syntaktický cukr, který mi například umožňuje vkládat identifikátory objektů přímo do Heredoc. Je to velmi pohodlné. Pochopím, pokud se to pravověrným programátorům nebude líbit, ale mně to vyhovuje.
    Josef Kufner avatar 22.5.2012 14:56 Josef Kufner | skóre: 66
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Jestli ono by takový syntaktický cukr neměl být spíš součástí šablonovacího systému...
    Hello world ! Segmentation fault (core dumped)
    22.5.2012 21:07 Kit
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Pokud bych potřeboval data do šablonovacího systému, tak nebudu výstup dat generovat v podobě stringu, ale derivačního stromu. Tím pádem by ale byl název metody __toString() nelogický. Metoda __toString() nám stále zůstane na jednoduchý export stringu.
    Josef Kufner avatar 22.5.2012 21:50 Josef Kufner | skóre: 66
    Rozbalit Rozbalit vše Re: Problém s autoloadem
    Neměl bys tolik studovat…
    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.