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 00:22 | Bezpečnostní upozornění

Společnost ZONER informuje o bezpečnostním incidentu, při kterém došlo ke zcizení a zveřejnění části přihlašovacích údajů zákazníků k elektronické poště a webhostingu CZECHIA.COM.

Ladislav Hagara | Komentářů: 0
včera 23:44 | Nová verze

Byla vydána nová stabilní verze 1.13 (1.13.1008.32) webového prohlížeče Vivaldi (Wikipedie). Z novinek vývojáři zdůrazňují možnost zobrazení otevřených i uzavřených listů pomocí ikonky Okno na postranní liště a vylepšené stahování (YouTube). Nejnovější Vivaldi je postaveno na Chromiu 62.0.3202.97.

Ladislav Hagara | Komentářů: 8
včera 20:55 | Nová verze

Byla vydána verze 2017.3 dnes již průběžně aktualizované linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux. Aktualizovat systém lze pomocí příkazů "apt update; apt dist-upgrade; reboot". Z novinek lze zmínit 4 nové nástroje: InSpy, CherryTree, Sublist3r a OSRFramework.

Ladislav Hagara | Komentářů: 0
včera 01:55 | Bezpečnostní upozornění

Společnost Uber potvrdila bezpečnostní incident a únik dat v roce 2016. Unikly údaje o 57 milionech cestujících (jména, emailové adresy a čísla mobilních telefonů) a 600 tisících řidičích (navíc čísla řidičských průkazů).

Ladislav Hagara | Komentářů: 1
21.11. 23:44 | Humor

Co vypíše příkaz man půl hodiny po půlnoci? Text "gimme gimme gimme". Jedná se o virtuální velikonoční vajíčko připomínající skupinu ABBA a její hit Gimme! Gimme! Gimme! (A Man After Midnight). Problém nastane, pokud gimme gimme gimme nabourá automatizované testování softwaru. To se pak příkaz man musí opravit [Bug 1515352] [reddit].

Ladislav Hagara | Komentářů: 10
21.11. 18:11 | Zajímavý článek

Mozilla.cz informuje, že Firefox na Fedoře podporuje Client Side Decorations. Firefox na Linuxu se vykresluje včetně standardního záhlaví okna, které je v případě webového prohlížeče většinou nadbytečné a ubírá drahocenné vertikální místo na obrazovce. Verze distribuovaná uživatelům Fedory však nyní obsahuje experimentální podporu pro takzvané Client Side Decorations, které umožňují vykreslování „oušek“ panelů do záhlaví okna.

Ladislav Hagara | Komentářů: 12
21.11. 05:00 | Bezpečnostní upozornění

Maxim Goryachy a Mark Ermolov ze společnosti Positive Technologies budou mít v prosinci na konferenci Black Hat Europe 2017 přednášku s názvem "Jak se nabourat do vypnutého počítače, a nebo jak v Intel Management Engine spustit vlastní nepodepsaný kód". O nalezeném bezpečnostním problému informovali společnost Intel. Ta bezpečnostní problém INTEL-SA-00086 v Intel Management Engine (ME), Intel Server Platform Services (SPS) a Intel

… více »
Ladislav Hagara | Komentářů: 41
21.11. 01:33 | Zajímavý projekt

Na Humble Bundle byla spuštěna akce Humble Book Bundle: Java. Za 1 dolar a více lze koupit 5 elektronických knih, za 8 dolarů a více 10 elektronických knih a za 15 dolarů a více 15 elektronických knih věnovaných programovacímu jazyku Java od nakladatelství O'Reilly. Peníze lze libovolně rozdělit mezi nakladatelství O'Reilly, neziskovou organizaci Code for America a Humble Bundle.

Ladislav Hagara | Komentářů: 0
21.11. 00:11 | Zajímavý projekt

Článek na OMG! Ubuntu! představuje rodinu písma IBM Plex. Jedná se o open source písmo (GitHub) navržené a uvolněné společností IBM (YouTube, Carbon Design System). Ukázka na Font Squirrel.

Ladislav Hagara | Komentářů: 13
20.11. 23:22 | Komunita

Na Humble Bundle lze získat počítačovou hru Brütal Legend (Wikipedie, YouTube) běžící také v Linuxu zdarma. Speciální akce končí ve středu v 19:00.

Ladislav Hagara | Komentářů: 0
Jak se vás potenciálně dotkne trend odstraňování analogového audio konektoru typu 3,5mm jack z „chytrých telefonů“?
 (9%)
 (1%)
 (1%)
 (1%)
 (75%)
 (14%)
Celkem 752 hlasů
 Komentářů: 37, poslední 21.11. 15:21
    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: 67
    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: 67
    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: 67
    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: 67
    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: 67
    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: 67
    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: 67
    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.