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 08:50 | Nová verze
    Vyšel Redmine 7.0, jeden z nejlepších open source ticketovacích systémů. Došlo k migraci na Rails 8, vylepšení UI/UX, Workflow, byla přidána podpora náhledu pro Microsoft Office a LibreOffice dokumenty, došlo k výkonnostním optimalizacím a přibylo spoustu dalších oprav a novinek. Více informací v oficiálním oznámení.
    Max | Komentářů: 0
    včera 16:22 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 166 (pdf).

    Ladislav Hagara | Komentářů: 1
    včera 03:33 | Pozvánky

    Blíží se prázdniny a než se rozutečete k moři, je na čase se opět sejít na Virtuální Bastlírně - pravidelném setkání elektroniků, ajťáků, bastlířů a obecně nadšenců do techniky. Co si pro vás strahovští bastlíři připravili tentokrát? Určitě proberou blížící se Linux Days i další události. U softwaru se chvíli zdrží a poví si kupříkladu o tom, jak se zbavit Bambu Cloudu, ale nepřijít o možnost ovládat tiskárnu na dálku. Řeč dojde i na AI,

    … více »
    bkralik | Komentářů: 1
    včera 03:22 | Nová verze

    Vývojáři postmarketOS vydali verzi 26.06 tohoto operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME, KDE Plasma Mobile, Phosh a Sxmo.

    Ladislav Hagara | Komentářů: 1
    včera 03:11 | Nová verze

    Byla vydána nová verze 2.55.0 distribuovaného systému správy verzí Git. Přispělo 100 vývojářů, z toho 33 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 1
    29.6. 20:22 | IT novinky

    Craig Loewen na blogu Microsoftu oznámil veřejnou preview verzi WSL kontejnerů, tj. linuxových kontejnerů ve Windows Subsystem for Linux (WSL). Spouští se příkazem wslc.exe.

    Ladislav Hagara | Komentářů: 1
    29.6. 19:00 | Nová verze

    Byla vydána (𝕏, Bluesky) nová verze 2026.2 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem 9 nových nástrojů v oficiálním oznámení na blogu.

    Ladislav Hagara | Komentářů: 0
    29.6. 12:55 | Nová verze

    Grafická aplikace Krokiet/Czkawka pro vyhledávání a odstraňovaní nepotřebných souborů (duplicitní soubory, prázdné složky, podobné obrázky, podobná videa, poškozené soubory a další) byla vydána ve verzi 12.0.0. Podrobný přehled novinek v příspěvku na Medium. Jedná se o poslední verzi frontendu Czkawka GTK nad Czkawka Core. Uživatelům se doporučuje migrovat na frontend Krokiet postavený nad frameworkem Slint. Představena byla aplikace Cedinia pro Android využívající Czkawka Core. Dostupná je jako APK pro ruční instalaci.

    Ladislav Hagara | Komentářů: 6
    29.6. 04:22 | Nová verze

    Po téměř třech letech od vydání verze 9 byla vydána nová verze 10 linuxové distribuce Mageia (Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 2
    28.6. 04:00 | Zajímavý software

    Nourish (GitHub) je nový správce oken pro Linux. Tradiční plochy nahrazuje nekonečným plátnem a posouváním a přibližováním. Využívá vlastní kompozitor pro Wayland s názvem y5. Videoukázka.

    Ladislav Hagara | Komentářů: 6
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (7%)
     (2%)
     (17%)
     (31%)
     (4%)
     (6%)
     (2%)
     (16%)
     (26%)
    Celkem 2021 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: PHP - funkce mi vrací undefined index

    7.10.2016 20:41 pavele
    PHP - funkce mi vrací undefined index
    Přečteno: 471×
    Mám takovou funkci v PHP, která funguje:
      public function addGet($no = null)
      {
        foreach( $_GET as $id => $value )
        { 
          if(!( $id == $no || $id == 'year'))
            $return .= '&' . $id . '=' . $value;
        }
    
        return $return;
      }
    
    
    Ale v error_log mám:

    PHP Notice: Undefined variable: return in /var/www/html/connect.php on line 388

    Jak definovat/kontrolovat proměnnou v této funkci, aby se mi nezobrazovala tato chyba?

    Díky.


    Řešení dotazu:


    Odpovědi

    Řešení 2× (00000, trilobyte)
    xxxxxx avatar 7.10.2016 21:13 xxxxxx | skóre: 23
    Rozbalit Rozbalit vše Re: PHP - funkce mi vrací undefined index
      public function addGet($no = null)
      {
        $return = ''; // Tohle tu chybí
    
        foreach( $_GET as $id => $value )
        { 
          if(!( $id == $no || $id == 'year'))
            $return .= '&' . $id . '=' . $value; // To je jako "$return = $return . (zbytek);"
                                                 // $return v první iteraci neexistuje
        }
    
        return $return;
      }
    
    Řešení 1× (trilobyte)
    7.10.2016 21:22 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: PHP - funkce mi vrací undefined index
    Před foreach dej řádek
    $return = "";
    Nechtěl bys raději použít funkci http_build_query()?
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    7.10.2016 22:11 pavele
    Rozbalit Rozbalit vše Re: PHP - funkce mi vrací undefined index
    Díky moc, funguje.

    Před chvílí jsem zkusil přidat řádek:

    global $return;

    a proměnnou jsem definoval na začátku souboru a fungovalo to.

    Ale podle googlu se to moc lidem nelíbí a výše uvedené řešení je lepší.

    Co se týče použití "http_build_query()" - nejsem programátor a nemluvím tvou řečí. :-)

    Pouze se snažím opravovat chyby /chybové hlášky/ v jednom programu po přechodu na PHP 5.4 (undefined index, undefined variable...).

    A tím porušuji pravidlo - pokud to jede, tak na to nešahej. Tedy, testuju a hraji si s tím ve virtuálu, samozřejmě. :-)
    7.10.2016 22:28 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: PHP - funkce mi vrací undefined index
    Tu funkci http_build_query() si snadno dohledáš v manuálu. Na rozdíl od té tvé funkce to udělá bezpečně.

    Slovu "global" se vyhýbej na sto honů. Nedávej ho tam, nebo se zblázníš.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    7.10.2016 22:44 pavele
    Rozbalit Rozbalit vše Re: PHP - funkce mi vrací undefined index
    Díky, podívám se na to.
    Řešení 1× (AraxoN)
    10.10.2016 11:37 soj
    Rozbalit Rozbalit vše Re: PHP - funkce mi vrací undefined index
    tyhle chyby nejsou způsobený přechodem na vyšší verzi php, už si je tam měl, jen se ti liší konfigurace (display_errors a/nebo error_reporting)
    AraxoN avatar 10.10.2016 13:09 AraxoN | skóre: 47 | blog: slon_v_porcelane | Košice
    Rozbalit Rozbalit vše Re: PHP - funkce mi vrací undefined index
    Áno, to čo hľadá je konfiguračný parameter "error_reporting" v súbore "php.ini".

    Je to lepšie, než keď "neprogramátor" sa snaží opraviť kód, ktorý vyprodukoval "poloprogramátor" (súdiac podľa ukážky pôvodného kódu).
    10.10.2016 16:00 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: PHP - funkce mi vrací undefined index
    Změnou konfigurace error_reporting chyba nezmizí, pouze se přestane vypisovat. Pro začátečníka zcela nevhodná úprava konfigurace.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    AraxoN avatar 11.10.2016 07:13 AraxoN | skóre: 47 | blog: slon_v_porcelane | Košice
    Rozbalit Rozbalit vše Re: PHP - funkce mi vrací undefined index
    Áno, ale opravovať by to nemal niekto, kto o sebe hovorí "nejsem programátor". Niekto mu z recesie poradí rm-rf a bude na tom horšie než keď začal.
    11.10.2016 15:37 pavele
    Rozbalit Rozbalit vše Re: PHP - funkce mi vrací undefined index
    Pokud mi někdo z recese poradí rm -rf, klidně to pro legraci udělám.

    Potom ovšem obnovím testovací kvm virtuál na mém firemním záložním serveru ze snapshotu a půjdu si hrát dál. :-)
    AraxoN avatar 11.10.2016 17:29 AraxoN | skóre: 47 | blog: slon_v_porcelane | Košice
    Rozbalit Rozbalit vše Re: PHP - funkce mi vrací undefined index
    To som myslel obrazne. V programovaní je nekonečne veľa možností ako konkrétnu časť programu opraviť tak aby vyzerala správnejšie, ale zároveň neplánovane rozbila niečo na druhom konci programu. To sa môžeš dozvedieť o mesiac a nemusí byť zjavné, že to bolo týmto zásahom do kódu. Debugovanie a ladenie je ťažšie než písanie nového kódu. Nechal by som to na programátora.

    Ak je cieľom program opraviť, potom Ti radia dobre, kde máš čo zmeniť. Ja si ale myslím, že cieľom je aby program išiel tak ako pred prechodom na novšie PHP a v tom prípade je lepšie naladiť error_reporting a opraviť len to, čo sa prechodom naozaj rozbilo. Táto konkrétna časť totiž bola rozbitá už pred prechodom.
    11.10.2016 19:32 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: PHP - funkce mi vrací undefined index
    Ještě jednou ne, změna error_reporting nic neřeší. Ta chyba tam byla ve starém PHP a zůstala tam. Je nezbytně nutné opravit tu chybu.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    12.10.2016 07:21 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: PHP - funkce mi vrací undefined index
    Ona tam ta varování nebývají jen tak z rozmaru autorů. Ale třeba také proto, že se novější verze může začít chovat v dané situaci jinak. Takže to, že to mohlo být rozbité před přechodem na novou verzi PHP a fungovalo to, ještě neznamená, že to bude fungovat i po přechodu. Opravdu by se na ten kód měl podívat někdo, kdo chápe, co znamená, a kdo zároveň ví, co se změnilo v nové verzi PHP.
    AraxoN avatar 12.10.2016 08:03 AraxoN | skóre: 47 | blog: slon_v_porcelane | Košice
    Rozbalit Rozbalit vše Re: PHP - funkce mi vrací undefined index
    Ja s Vami obidvoma súhlasím. Akurát ten človek o sebe sám napísal, že nie je programátor. A preto je bezpečnejšie ak do kódu nebude šahať.
    12.10.2016 08:23 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: PHP - funkce mi vrací undefined index
    Ne. Bezpečnější je, pokud do kódu bude sahat někdo, kdo kódu dokáže porozumět. Varianta nesahat do kódu vůbec je méně bezpečná, protože se s přechodem na novou verzi PHP může začít projevovat nějaká chyba, která se dříve neprojevovala.
    12.10.2016 10:25 lolek
    Rozbalit Rozbalit vše Re: PHP - funkce mi vrací undefined index
    bezpečnější bude, když přestaneš po internetu trousit ty svoje moudra, nikdo o ně nestojí
    12.10.2016 12:18 Xerces
    Rozbalit Rozbalit vše Re: PHP - funkce mi vrací undefined index
    Já bych se taky přikláněl v tomto případě to radši řešit změnou konfigurace pro vypisování stavových hlášek. Co když o kus dál v kódu je nějaké odchytávání except, kterým se ten stav ošetřuje a tím, že tady podstrčí prázdnou proměnou, tak to vlastně obejde. Ale pokud si věří, že to zvládne vše otestovat ve virtuálu, tak bych ho od zdokonalování kódu neodrazoval. Každej nějak začínal.
    12.10.2016 14:08 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: PHP - funkce mi vrací undefined index
    Například ve Wordpresu jsem našel podobnou chybu a ještě navíc s proměnnou "global". Stačilo jen ten global odstranit a aplikace začala fungovat jak má. Blokování warningů a noticek ničemu neprospívá.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    AraxoN avatar 12.10.2016 15:29 AraxoN | skóre: 47 | blog: slon_v_porcelane | Košice
    Rozbalit Rozbalit vše Re: PHP - funkce mi vrací undefined index
    A potom aktualizuješ wordpress a z upstreamu sa Ti tá chyba vráti. Môžeš ju takto opravovať znova a znova.
    pavlix avatar 12.10.2016 15:32 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: PHP - funkce mi vrací undefined index
    Třeba ne.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    12.10.2016 15:44 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: PHP - funkce mi vrací undefined index
    To mě netrápilo, protože na svůj web bych si Wordpress nedal. Zákazník to chtěl spravit. Funguje to, hotovo.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.

    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.