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í
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
dnes 06:00 | Zajímavý software

OMG! Ubuntu! představuje emulátor terminálu Hyper (GitHub) postavený na webových technologiích (HTML, CSS a JavaScript). V diskusi k článku je zmíněn podobný emulátor terminálu Black Screen. Hyper i Black Screen používají framework Electron, stejně jako editor Atom nebo vývojové prostředí Visual Studio Code.

Ladislav Hagara | Komentářů: 2
dnes 06:00 | Zajímavý článek

I letos vychází řada ajťáckých adventních kalendářů. QEMU Advent Calendar 2016 přináší každý den nový obraz disku pro QEMU. Programátoři se mohou potrápit při řešení úloh z kalendáře Advent of Code 2016. Kalendáře Perl Advent Calendar 2016 a Perl 6 Advent Calendar přinášejí každý den zajímavé informace o programovacím jazyce Perl. Stranou nezůstává ani programovací jazyk Go.

Ladislav Hagara | Komentářů: 2
3.12. 16:24 | Nová verze

Byla vydána Mageia 5.1. Jedná se o první opravné vydání verze 5, jež vyšla v červnu loňského roku (zprávička). Uživatelům verze 5 nepřináší opravné vydání nic nového, samozřejmě pokud pravidelně aktualizují. Vydání obsahuje všechny aktualizace za posledního téměř půldruhého roku. Mageia 5.1 obsahuje LibreOffice 4.4.7, Linux 4.4.32, KDE4 4.14.5 nebo GNOME 3.14.3.

Ladislav Hagara | Komentářů: 8
3.12. 13:42 | Pozvánky

V Praze probíhá konference Internet a Technologie 16.2, volné pokračování jarní konference sdružení CZ.NIC. Konferenci lze sledovat online na YouTube. K dispozici je také archiv předchozích konferencí.

Ladislav Hagara | Komentářů: 0
2.12. 22:44 | Komunita

Joinup informuje, že Mnichov používá open source groupware Kolab. V srpnu byl dokončen dvouletý přechod na toto řešení. V provozu je asi 60 000 poštovních schránek. Nejenom Kolabu se věnoval Georg Greve ve své přednášce Open Source: the future for the European institutions (SlideShare) na konferenci DIGITEC 2016, jež proběhla v úterý 29. listopadu v Bruselu. Videozáznam přednášek z hlavního sálu je ke zhlédnutí na Livestreamu.

Ladislav Hagara | Komentářů: 22
2.12. 15:30 | Zajímavý projekt

Společnost Jolla oznámila v příspěvku Case study: Sailfish Watch na svém blogu, že naportovala Sailfish OS na chytré hodinky. Využila a inspirovala se otevřeným operačním systémem pro chytré hodinky AsteroidOS. Použita je knihovna libhybris. Ukázka ovládání hodinek na YouTube.

Ladislav Hagara | Komentářů: 8
2.12. 14:15 | Nová verze

Byla vydána verze 7.1.0 skriptovacího jazyka PHP používaného zejména k vývoji dynamických webových stránek. Jedná se o první stabilní verzi nejnovější větvě 7.1. Přehled novinek v dokumentaci. Podrobnosti v ChangeLogu. K dispozici je také příručka pro přechod z PHP 7.0.x na PHP 7.1.x.

Ladislav Hagara | Komentářů: 4
2.12. 12:55 | Nová verze

Google Chrome 55 byl prohlášen za stabilní. Nejnovější stabilní verze 55.0.2883.75 tohoto webového prohlížeče přináší řadu oprav a vylepšení (YouTube). Opraveno bylo také 36 bezpečnostních chyb. Mariusz Mlynski si například vydělal 22 500 dolarů za 3 nahlášené chyby (Universal XSS in Blink).

Ladislav Hagara | Komentářů: 4
2.12. 11:55 | Pozvánky

Máte rádi svobodný software a hardware nebo se o nich chcete něco dozvědět? Přijďte na 135. sraz spolku OpenAlt, který se bude konat ve čtvrtek 8. prosince od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Sraz bude tentokrát tématický. Bude retro! K vidění budou přístroje jako Psion 5mx nebo Palm Z22. Ze svobodného hardwaru pak Openmoko nebo čtečka WikiReader. Přijďte se i vy pochlubit svými legendami, nebo alespoň na pivo. Moderní hardware má vstup samozřejmě také povolen.

xkucf03 | Komentářů: 1
2.12. 00:10 | Nová verze

Byla vydána verze 3.2 svobodného systému pro detekci a prevenci průniků a monitorování bezpečnosti počítačových sítí Suricata. Z novinek lze zmínit například podporu protokolů DNP3 a CIP/ENIP, vylepšenou podporu TLS a samozřejmě také aktualizovanou dokumentaci.

Ladislav Hagara | Komentářů: 0
Kolik máte dat ve svém domovském adresáři na svém primárním osobním počítači?
 (32%)
 (24%)
 (29%)
 (7%)
 (5%)
 (3%)
Celkem 771 hlasů
 Komentářů: 50, poslední 29.11. 15:50
Rozcestník
Reklama

Dotaz: Informace o PHP

9.11.2014 22:28 PHP
Informace o PHP
Přečteno: 321×
Ahoj, nevíte prosím někdo, zda vyžaduje soubor s php kódem odřádkování ? (prázdný řádek na konci jako třeba Bash, Shell). Děkuji

Řešení dotazu:


Odpovědi

9.11.2014 22:56 Sten
Rozbalit Rozbalit vše Re: Informace o PHP
Nevyžadují to ani shell ani PHP
10.11.2014 00:31 PHP
Rozbalit Rozbalit vše Re: Informace o PHP
Díky, tak shell teď nevím na 100% ale bash na 100% ano....
10.11.2014 00:35 Kit | skóre: 36 | Brno
Rozbalit Rozbalit vše Re: Informace o PHP
Bash také ne.
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
Josef Kufner avatar 10.11.2014 02:03 Josef Kufner | skóre: 66
Rozbalit Rozbalit vše Re: Informace o PHP
Jen tak pro úplnost: Je vhodné vynechávat poslední uzavírací ?>, aby do výstupu nevlezl náhodou nějaký zbytečný prázdný řádek na konci souboru.
Hello world ! Segmentation fault (core dumped)
10.11.2014 02:52 PHP
Rozbalit Rozbalit vše Re: Informace o PHP
Jen tak pro úplnost: Je vhodné vynechávat poslední uzavírací ?>, aby do výstupu nevlezl náhodou nějaký zbytečný prázdný řádek na konci souboru.
Co to ? To nedává smysl...
Jendа avatar 10.11.2014 03:27 Jendа | skóre: 73 | blog: Výlevníček | JO70FB
Rozbalit Rozbalit vše Re: Informace o PHP
Dává. Představ si, že máš index.php, který dělá něco jako:
<?php
10 include("config.php");
20 include("knihovna.php");
30 include("nette.php");
40 
50 header('Content-Type: text/html; charset=utf-8');
60 
70 vypiš_hlavičku();
80 vypiš_články();
90 vypiš_patičku();
?>
Pokud ty includované soubory obsahovaly na konci nový řádek, zahlásí to chybu (Headers already sent!) na řádku 50, protože to poslalo nový řádek ještě před hlavičkami.
AraxoN avatar 10.11.2014 10:49 AraxoN | skóre: 45 | blog: slon_v_porcelane | Košice
Rozbalit Rozbalit vše Re: Informace o PHP
Jeden nový riadok za ?> to ešte nespôsobí, musí tam byť nových riadkov viac, alebo nejaké medzery, taby, či iné znaky. Možno to spustí "nový riadok" z windows, ktorý je v skutočnosti dvoma znakmi (CR+LF), alebo nový riadok z Mac (CR), ale linuxový nový riadok (LF) je na linuxovom serveri v poriadku.
A fine is a tax for doing wrong. A tax is a fine for doing well.
10.11.2014 12:15 Kit | skóre: 36 | Brno
Rozbalit Rozbalit vše Re: Informace o PHP
V každém případě je poslední řádek obsahující jen "?>" zcela zbytečný a je tedy i zbytečné ho do skriptu dávat. Ve svých skriptech takový řádek nemám na konci ani uprostřed a nechybí mi.
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
10.11.2014 12:44 PHP
Rozbalit Rozbalit vše Re: Informace o PHP
Hm, tak to dokonce píšou i v manuálu, že se to nedoporučuje používat, akorát nevím jak bych napsal třeba tohle.
<div><?php echo $var; ?></div>
takto? :-D
<div><?php echo $var;</div>
10.11.2014 13:02 chrono
Rozbalit Rozbalit vše Re: Informace o PHP
Práve na tom mieste to ?> zmysel má (a ako už bolo napísané, na konci súboru je to zbytočné).
AraxoN avatar 10.11.2014 13:12 AraxoN | skóre: 45 | blog: slon_v_porcelane | Košice
Rozbalit Rozbalit vše Re: Informace o PHP
Z mojej skúsenosti je lepšie oddeliť HTML a PHP kód do osobitných súborov a nemiešať ich v jednom PHP skripte. Potom naozaj človek nepotrebuje ukončovaciu značku ?>.
A fine is a tax for doing wrong. A tax is a fine for doing well.
10.11.2014 13:31 Kit | skóre: 36 | Brno
Rozbalit Rozbalit vše Re: Informace o PHP
Ten tvůj příklad bych zapsal takto:
<?php
echo "<div>$var</div>";
Do PHP však už nedávám ani kousek HTML, ani jednu HTML značku. Vše mám ve výstupní šabloně.
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
10.11.2014 17:25 PHP
Rozbalit Rozbalit vše Re: Informace o PHP
To je nemožné... a jak třeba generuješ položky li ? Píšeš je ručně bez php ?
AraxoN avatar 10.11.2014 17:39 AraxoN | skóre: 45 | blog: slon_v_porcelane | Košice
Rozbalit Rozbalit vše Re: Informace o PHP
Niektoré šablónovacie systémy vedia robiť aj opakovanie a prechádzanie zoznamu. Tie, ktoré nevedia sa stále dajú použiť s cyklom foreach - spravíš foreach a vyparsuješ pre každú položku šablónu kde je <li>{POLOZKA}</li> a potom to celé zasadíš do ďalšej šablóny kde je <ul>{POLOZKY}</ul>. Tzn. máš 2 súbory so šablónami, kde je len HTML a potom jeden súbor kde je len PHP, ktorý to dá dohromady cez foreach.
A fine is a tax for doing wrong. A tax is a fine for doing well.
10.11.2014 17:49 PHP
Rozbalit Rozbalit vše Re: Informace o PHP
Čili oba dva budou ve finále stejně obsahovat html soubory, nebo co bude ten foreach plnit/vypisovat když ne "li" ?
AraxoN avatar 10.11.2014 18:14 AraxoN | skóre: 45 | blog: slon_v_porcelane | Košice
Rozbalit Rozbalit vše Re: Informace o PHP
HTML kód samozrejme potrebuješ niekde napísať, ak má výstupom byť HTML zobraziteľný v prehliadači. Tu ide len o to, aby sa v jednom súbore nemiešali naraz HTML a PHP kód.

Btw, sú javascriptové frameworky, ktoré môžeš kŕmiť zo servera priamo "surovými" dátami (napr. JSON), ktoré sa potom v prehliadači menia na zobraziteľné UI prvky. Potom už naozaj nepotrebuješ ani riadok HTML kódu. Príde mi ale jednoduchšie a rýchlejšie tvoriť HTML na serveri.
A fine is a tax for doing wrong. A tax is a fine for doing well.
10.11.2014 22:56 Kit | skóre: 36 | Brno
Rozbalit Rozbalit vše Re: Informace o PHP
Položky menu mohu třeba vytáhnout z databáze, ale pro jednoduchost jsem si udělal seznam $odkazy:
<?php
$doc = new DOMDocument();
$menu = $doc->createElement('menu');
$odkazy = array(
    array("První položka", "http://prvni"),
    array("Druhá položka", "http://druhy"),
    array("Třetí položka", "http://treti"),
);
foreach ($odkazy as $odkaz) {
    $item = $doc->createElement('item', $odkaz[0]);
    $item->setAttribute('href', $odkaz[1]);
    $menu->appendChild($item);
}
$doc->appendChild($menu);

$sablona = new DOMDocument();
$sablona->load('menu.xsl');
$xsl = new XSLTProcessor();
$xsl->importStyleSheet($sablona);

echo $xsl->transformToXML($doc);
Trasformaci DOMu na webstránku už dělá šablona.

Možná to vypadá složitě, ale když je to správně zapouzdřené ve vieweru, tak to vůbec složité není ani pro hodně komplexní stránku. Navíc je to velmi rychlé.
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
Josef Kufner avatar 10.11.2014 23:40 Josef Kufner | skóre: 66
Rozbalit Rozbalit vše Re: Informace o PHP
Ono navíc <?php ?> je výrazně pomalejší než prosté echo. A také se pak pletou dvě úrovně odsazování. Takže píšu jen PHP s echo "<html>". Odsazování pak je jasné a generované HTML neodsazuju, jen vhodně zalamuju (čitelné je to dost, pokud to je vůbec potřeba).
Hello world ! Segmentation fault (core dumped)
11.11.2014 00:14 Kit | skóre: 36 | Brno
Rozbalit Rozbalit vše Re: Informace o PHP
Dobře se dá vyblbnout i se syntaxí Heredoc, protože uvozovky se uvnitř nemusí backslashovat, ale proměnné se expandují. Na výstup celé stránky pak stačí jedno echo.
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
Josef Kufner avatar 11.11.2014 00:49 Josef Kufner | skóre: 66
Rozbalit Rozbalit vše Re: Informace o PHP
Ale těžko se to kombinuje s cykly, které jsou docela časté.
Hello world ! Segmentation fault (core dumped)
11.11.2014 01:22 Kit | skóre: 36 | Brno
Rozbalit Rozbalit vše Re: Informace o PHP
Cykly strčíš do metod __toString() patřičných objektů.
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
Josef Kufner avatar 11.11.2014 03:25 Josef Kufner | skóre: 66
Rozbalit Rozbalit vše Re: Informace o PHP
A nejsou pak takové šablony příliš rozdrobené?
Hello world ! Segmentation fault (core dumped)
11.11.2014 07:22 Kit | skóre: 36 | Brno
Rozbalit Rozbalit vše Re: Informace o PHP
Proč by měly být? Pokud v určitém místě vložím objekt $menu, v jiném $clanek a v dalsim $reklama, tak to jsou separátní části, které se samostatně starají o svou validitu. Pokud je v hlavní šabloně chci přemístit, tak prostě jen přesunu objekt $reklama na jiné místo a nemusím se bát, že si něco rozbiju.

Kromě toho mám vše objektově a nějak se do těch 65 řádek na třídu vejít musím. Tohle stejně používám jen u drobností, u kterých rozdělení na několik komponent nevadí.
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
Josef Kufner avatar 11.11.2014 13:36 Josef Kufner | skóre: 66
Rozbalit Rozbalit vše Re: Informace o PHP
Takže v $menu už heredoc nepoužíváš, aby se ti tam dobře zapisoval foreach přes položky menu?
Hello world ! Segmentation fault (core dumped)
11.11.2014 13:43 Kit | skóre: 36 | Brno
Rozbalit Rozbalit vše Re: Informace o PHP
Místo foreach zpravidla používám implode() a tam už Heredoc většinou uplatnění nenajde.
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.