Naučme se správně PHP a MySQL. Osobní zkušenost jako důkaz: programovací jazyk PHP je hlavním jazykem na internetových lekcích programování v PHP

1. Spřátelte se s referenční knihou PHP

Pokud s PHP začínáte, pak je čas podívat se na úžasnou příručku PHP. PHP Reference je neuvěřitelně komplexní a má opravdu užitečné komentáře ke každému článku. Než položíte otázky nebo se pokusíte vyřešit problém sami, ušetříte si čas a zamiřte do referenční knihy. Odpovědi na vaše otázky jsou již pohodlně umístěny v užitečném článku na webu PHP.net.
V tomto případě doporučujeme hledat referenční knihy v ruštině sami, nejlépe php pro začátečníky. Budeme rádi, když do komentářů k článku uvedete odkazy na užitečné příručky (Jen mějte na paměti, že se jedná o překlad článku).

2. Povolte hlášení chyb

6. Pro čitelnost kódu odsazujte a používejte mezery

Pokud v kódu nepoužijete odsazení nebo mezery, bude výsledek vypadat jako malba Jacksona Pollacka. Ujistěte se, že váš kód je čitelný a prohledávatelný, protože v budoucnu v něm téměř jistě provedete změny. IDE a moderní textové editory mohou automaticky odsadit kód.

7. Navrstvěte svůj kód

Vrstvení vašich aplikací není nic jiného než rozdělení různých součástí kódu do částí. V budoucnu vám to poskytne možnost snadno změnit kód.

8. Vždy používejte

Programátoři se často snaží používat zkratky v příkazech PHP. Obvykle se to dělá takto:

<% echo "Hello world"; %>

echo "Ahoj světe" ;

<% echo "Hello world" ; %>

I když to ušetří několik znaků, všechny tyto metody jsou zastaralé a neoficiální. Držte se standardu, protože je zaručena podpora všech budoucích verzí.

9. Používejte smysluplné a konzistentní názvy

Pojmenování není jen pro vaše vlastní potěšení. Není nic horšího než se brodit nesmyslnými konvencemi jiného programátora. Pomozte sobě i ostatním používáním smysluplných názvů pro své třídy a vlastnosti.

10. Komentovat, komentovat, komentovat

Kromě použití mezer a odsazení k oddělení kódu budete muset k anotaci kódu použít také vložené komentáře. Později si poděkujete, až se budete muset vrátit a něco v kódu vyhledat, nebo když si prostě nepamatujete, co určitá funkce udělala. To je také užitečné pro ty, kteří potřebují zkontrolovat váš kód.

11. Nainstalujte MAMP/WAMP

MySQL je nejoblíbenější typ databáze používaný s PHP (i když ne jediný). Pokud potřebujete nastavit místní prostředí pro vývoj a testování aplikací PHP na vašem počítači, zvažte instalaci MAMP (Mac) nebo WAMP (Windows). Instalace MySQL na váš vlastní počítač může být zdlouhavý proces a oba tyto softwarové balíčky obsahují MySQL. Chytré a jednoduché.

12. Nastavte limity pro vaše skripty

Nastavení časového limitu pro PHP skripty je velmi důležitá věc. Jsou chvíle, kdy se skripty porouchají, a když k tomu dojde, budete muset použít vlastnost set_time_limit, abyste se vyhnuli nekonečným smyčkám a časovým limitům připojení k databázi. Set_time_limit nastavuje časový limit na maximální počet sekund, ve kterých je skript spuštěn (výchozí je 30). Po uplynutí této doby se objeví fatální chyba.

13. Použití objektů (nebo OOP)

Objektově orientované programování (OOP) používá objekty k reprezentaci komponent aplikace. OOP není jen způsob, jak rozdělit kód na samostatné logické části, ale také snižuje množství opakování kódu a usnadňuje jeho budoucí úpravy.

14. Pochopte rozdíl mezi jednoduchými a dvojitými uvozovkami

Použití jednoduchých uvozovek v řetězcích je efektivnější, protože analyzátor nemusí probírat kód a hledat speciální znaky a další věci, které dvojité uvozovky umožňují. Pokud je to možné, snažte se vždy používat jednoduché uvozovky.

Námitka: Ve skutečnosti to nemusí být nutně pravda. Srovnávací testy ukazují, že při testování řetězců bez proměnných existují určité výhody při používání dvojitých uvozovek.

15. Nevkládejte phpinfo() do vašeho Webroot

Phpinfo je skvělá věc. Jednoduše vytvořením souboru PHP, který má:

a jeho instalací někde na serveru můžete okamžitě zjistit vše o prostředí vašeho serveru. Mnoho nováčků však umístí soubor obsahující phpinfo() do webrootu serveru. Jedná se o extrémně nejistou praktiku, a pokud něčí zvídavá mysl získá přístup, může potenciálně pokazit váš server. Ujistěte se, že phpinfo() je na bezpečném místě, a jako zvláštní opatření jej po dokončení odstraňte.

16. Nikdy, nikdy nevěřte svým uživatelům.

Pokud má vaše aplikace místa pro přihlášení uživatelů, měli byste vždy předpokládat, že se někdo pokusí zadat pochybný kód. (Nenaznačujeme, že vaši uživatelé jsou špatní lidé. Je to jen zdravý rozum.) Skvělý způsob, jak chránit váš web před hackery, je vždy inicializovat vaše proměnné, abyste ochránili svůj web před útoky XSS. PHP.net má příklad správně uzavřeného formuláře s inicializovanými proměnnými:

if (správný_uživatel ($_POST [ "uživatel" ] , $_POST [ "heslo" ]) (

$login = true ;

if ($login) (

forward_to_secure_environment () ;

17. Udržujte hesla zašifrovaná

Mnoho nováčků v PHP často ukládá citlivá data, jako jsou hesla, do databáze bez použití šifrování. Před uvolněním databáze hesel zvažte použití MD5 k zašifrování hesel.

echo md5("mojeheslo"); // vykreslí -

echo md5 ("moje heslo"); // vykreslí -

Námitka: Pamatujte však, že hashe MD5 byly kompromitovány již dlouhou dobu. Jsou samozřejmě bezpečnější než ne, ale s pomocí obří „spektrální tabulky“ mohou hackeři obnovit váš hash. Pro ještě větší bezpečnost zvažte přidání soli (rušení bílého šumu). "Sůl" je obvykle další sada znaků, které připojíte k uživatelskému řetězci.

18. Používejte nástroje pro vizualizaci databáze

Pokud je pro vás obtížné plánovat a upravovat databáze pro vaše aplikace PHP, můžete zvážit použití nástroje pro vizualizaci databáze. Uživatelé MySQL mohou pracovat s DBDesigner a MySQL Workbench a vizuálně navrhovat své databáze.

19. Použijte výstupní vyrovnávací paměť

Ukládání do vyrovnávací paměti je jednoduchý způsob, jak výrazně zlepšit kvalitu a rychlost vašeho PHP skriptu. Bez ukládání do vyrovnávací paměti váš skript zobrazí HTML na stránce tak, jak je zpracováváno – po částech. Přidání výstupní vyrovnávací paměti umožňuje PHP ukládat HTML jako proměnnou a odesílat ji do prohlížeče v jednom bloku.

Chcete-li povolit funkci ukládání do vyrovnávací paměti, jednoduše přidejte ob_start() na začátek souboru.

Námitka: Ačkoli to není povinné, obecně se považuje za dobrou praxi jednoduše připojit funkci „ob_end_flush();“. ke konci dokumentu. P.S. Chcete také komprimovat HTML? Stačí změnit „ob_start();“ na „ob_start(‘ob_gzhandler‘)“;

XHTML

nepojmenovaná

nepojmenovaná



20. Chraňte svůj skript před útoky SQL injection

Pokud neuvedete znaky používané v řetězcích SQL, je váš kód zranitelný vůči útoku SQL injection. Tomu se můžete vyhnout použitím funkce mysql_real_escape_string nebo připravených SQL příkazů.

Zde je příklad mysql_real_escape_string v akci:

$username = mysql_real_escape_string($GET["username"]);

$username = mysql_real_escape_string ($GET [ "username" ] ) ;

A připravené prohlášení:

21. Zkuste ORM

Pokud píšete objektově orientované PHP, můžete použít OR-mapping (ORM). ORM umožňuje transformovat data mezi relačními databázemi a objektově orientovanými programovacími jazyky. Stručně řečeno, ORM umožňuje pracovat s databázemi stejným způsobem, jakým pracujete s třídami a objekty v PHP.

Existuje mnoho knihoven ORM pro PHP, jako je Propel, a ORM je zabudováno do rámců PHP, jako je CakePHP.

22. Stránky spravované databází mezipaměti

Ukládání stránek PHP řízených databází do mezipaměti je skvělý nápad, jak zlepšit rychlost načítání a výkon vašeho skriptu. Ve skutečnosti není tak těžké vytvářet a načítat soubory statického obsahu pomocí našeho dobrého přítele ob_start(). Zde je příklad převzatý z Snipe.net:

// TOP vašeho skriptu $cachefile = "cache/".basename($_SERVER["SCRIPT_URI"]); $cachetime = 120 * 60; // 2 hodiny // Podávat z mezipaměti, pokud je mladší než $cachetime if (file_exists($cachefile) && (time() - $cachetime< filemtime($cachefile))) { include($cachefile); echo ""; exit; ) ob_start(); // spusťte výstupní vyrovnávací paměť // Váš normální skript PHP a obsah HTML zde // SPODNÍ část skriptu $fp = fopen($cachefile, "w"); // otevřete soubor mezipaměti pro zápis fwrite($fp, ob_get_contents() // uložte obsah výstupního bufferu do souboru fclose($fp // zavřete soubor ob_end_flush();

// TOP vašeho skriptu

$cachefile = "cache/" . základní název ($_SERVER [ "SCRIPT_URI" ] ) ;

$cachetime = 120 * 60 ; // 2 hodiny

// Slouží z mezipaměti, pokud je mladší než $cachetime

if (file_exists($cachefile) && (time() - $cachetime< filemtime ($cachefile ) ) ) {

include ($cachefile) ;

Od autora: Je nutné znát programovací jazyk PHP? Pokud se chystáte hodit do svého pozemku s budováním webových stránek, budete muset. I když opravdu nechcete! proč tomu tak je? Pokusíme se odpovědět na všechna běžná „proč“ spojená s tímto jazykem v našem materiálu.

Řešení, které „drží“ internet pohromadě

Přesně tak popsal PHP jeden můj známý, který už více než deset let tvoří internetové zdroje. A má pravdu, pravděpodobně 200% procent (nebo možná více).

Samotná historie vzniku tohoto jazyka naznačuje, že se zrodil, aby „oslepil“ současnou verzi Sítě, na kterou jsme tak zvyklí. To je pravděpodobně důvod, proč si někteří lidé stále nedokážou uvědomit jeho sílu, i když se naučili základy programování v PHP.

Dokázat roli PHP při tvorbě internetu je nevděčný úkol. Zde, jak se říká, mohou začít mluvit příznivci jiných jazyků na straně serveru. Říkají, že „hypertextový preprocesor“ (jak zkratka PHP znamená) již přežil svou užitečnost. Mnohé z jeho funkcí jsou implementovány i v…

No, křičet a mávat rukama, vychvalovat svůj programovací jazyk, na který se specializujete, je jednoduchá záležitost. Ale nejlepším „důkazem“ naznačujícím poptávku po PHP je jeho rozšířenost.

Následující žebříček softwarových jazyků, který loni v létě sestavili specialisté TIOBE, nám říká, že PHP je již několik let trvale na špici. Ještě jste nezačali hledat návod na programovací jazyk PHP? Brzy budete běhat.

Pokud se ptáte, proč Java tak poskočila, pak odpověď zní: díky mobilnímu operačnímu systému Android, pro který jsou v tomto jazyce vyvíjeny aplikace.

Vlastní hrábě

Na začátku roku 2000 jsem se zabýval „výzkumem“ v oblasti programování. Pořád jsem zjišťoval, do které „party“ vývojářů se mám přidat, které disciplíně bych měl zasvětit svůj život studiu.

PHP jsem v zásadě nepovažoval za programovací jazyk pro začátečníky. Vypadal příliš zmateně. Zde je další věc o ASP.NET: komerční jazyk založený na C#. Ach, jaké vzdušné zámky jsem tehdy postavil! A byly k tomu všechny předpoklady:

Technologie byla vyvinuta takovým „myšlenkovým gigantem“, jakým je Microsoft.

Dostupnost specializovaného softwaru - výkonný editor Visual Studio.

Rozsáhlá a dobře popsaná dokumentace.

Naděje na „zdravou“ budoucnost.

ASP.NET, na rozdíl od PHP, pro mě bylo mnohem jednodušší. Visual Studio zautomatizovalo velké množství operací skriptování na straně serveru. Například díky skvělému vizuálnímu editoru zabralo vytvoření webové stránky jen pár minut. Přetažením ovládacích prvků a jejich úpravou v editoru můžete vytvořit web za méně než hodinu!

Ale programovací jazyk PHP od nuly mi hned nefungoval. Upřímně jsem se s ním snažil spřátelit (zkoušku jsem musel nějak složit). Ale při studiu jeho základů mi to přišlo bezcitné až chladné.

Obecně jsem si vzal ASP.NET. Vytvořil jsem svůj první web. Zdá se, že ve vývojovém prostředí vše funguje. Zkontroloval jsem kompatibilitu mezi různými prohlížeči v několika oblíbených prohlížečích. Myslím, že je čas „bojovat“. Ukažte tedy své „mozkové dítě“ celé zemi (alespoň). Tady se ukázaly být „hrabáky“.

Moje pokusy najít hosting s podporou ASP.NET na RuNet nebyly nikdy úspěšné. Placených platforem bylo samozřejmě několik, ale ceny za hostování webu na nich zjevně nebyly „studentské“.

Nějak jsem našel možnost bezplatného hostování v Burzhunet (mimochodem sponzorovaný společností Microsoft). No, kliknul jsem, užil si šíři svých myšlenek, ale dál to nešlo. A to vše díky tomu, že většina stránek již byla vytvořena v PHP.

Poté, co se rozhodnete a pochopíte, že jste připraveni se naučit programovací jazyk PHP, vyhledejte si návod pro začátečníky „pro sebe“. Hlavní věc je, že rozumíte tomu, co chce autor publikace svým čtenářům sdělit. Okamžitě se připravte, že za kvalitní literaturu zaplatíte pořádnou sumu peněz.

Ale je lepší zaujmout integrovaný přístup – přidat také chytrý. To vám umožní okamžitě zdokonalit své dovednosti pomocí praktických příkladů. A moje rada pro vás je méně kopírovat a vkládat kód! Teď vysvětlím proč.

Když budete sami psát ukázkové skripty, rychle si zvyknete a zapamatujete si vlastnosti syntaxe PHP. Co se týče literatury, volte výukový program se základy programování v PHP. A je vhodné, aby autor zveřejnil kód všech příkladů uvedených v jeho zdroji na internetu.

Bezprostředně před zahájením školení si také stáhněte a nainstalujte Open Server. Tento softwarový balíček obsahuje všechna prostředí, která potřebujete k psaní a testování kódu.

Dovolte mi, abych se pro dnešek rozloučil. Omluvte (když něco) přílišný přehled o obsahu článku, ale to je nutné pro pochopení vlastností tohoto jazyka (přeci jen je serverový). Přeji vám, abyste rychle pochopili základy programovacího jazyka PHP a začali skutečné kódování!

Pokusím se napsat doporučení ve volné formě pro prvních pár bodů.

Za prvé a to nejdůležitější, abyste se dobře naučili programování v PHP, musíte se naučit dobře programovat. To je velmi důležitá věc. Většina lidí píšících v PHP nemá o programování nejmenší ponětí. I o tak základních věcech, jako je formátování kódu, ladění, profilování, zpracování chyb, operace se soubory. Můžete si všimnout, že nemluvím o OOP. Toto je zcela samostatné téma, které se musí učit specificky. Bohužel ze 100 lidí, kteří říkají, že znají OOP, je 90 banálních kopírujících pastýřů, kteří se naučili syntaxi, ale nechápou význam objektů. Ale ke hře šachů nestačí vědět, jak se figurky pohybují.

Taky by bylo fajn si odpovědět na otázku – proč se chceš učit programovat v PHP? Otázka není vůbec nečinná. Mnoho lidí si v něm plete spoustu různých pojmů. Například CMS zde již byl zmíněn. a skutečně, pokud se bavíme o vydělávání peněz, pak přizpůsobení Jumly a psaní posraných modulů pro ni je finančně mnohem výnosnější než možnost napsat něco od začátku. Každopádně na volné noze.

Obecně lze PHP používat mnoha různými způsoby. A pro každý případ to bude jeho vlastní jazyk.

  • Můžete si vytvořit web pro hosta nebo vizitku pomocí „nahého“ PHP – a není na tom nic špatného nebo ostudného. Naopak, je to plus jazyka, který je pro takové účely vhodný, aniž by bylo nutné táhnout několik milionů řádků kódu kvůli webu s pěti sty.
  • Můžete napsat profesionální portál na základě jednoho z existujících frameworků a rozvíjet jej.
  • Můžete si napsat vlastní highload projekt, pro který budete muset napsat svůj vlastní framework, opět pomocí holého PHP.
  • Můžete, jak již bylo zmíněno, nýtovat stránky založené na nějakém CMS.

Spousta možností! takže se musíte nejprve rozhodnout, co chcete.

Výše mluvili o JS+CSS – neposlouchejte, je to úplný nesmysl. Frontend programování je zcela samostatná věc, mnohem více vizuální než abstraktní. A díky bohu to začíná chápat stále více zaměstnavatelů. I když opět, pokud jste na volné noze a jste nadšenec všech řemesel, nemůžete bez toho žít.

Pokud ale pracujete jako hardcore serverový programátor v týmu, pak potřebujete mít pouze obecné znalosti HTML/JS/CSS (protože texty v těchto jazycích jsou ve skutečnosti prakticky jediným výsledkem práce PHP).

Co ale určitě musíte dobře znát ze souvisejících technologií, je HTTP protokol, struktura souborového systému a práce s příkazovým řádkem v Linuxu.

Teď k tomu zbytku

Mysql je stále základním kamenem ukládání dat na webu. Musíte znát a rozumět spojením a indexům

Rámy jsou nutností. Zde však nastává problém volby, ale není mezi nimi zásadní rozdíl. Yii je dobrá volba.

Nepotřebujete Github, nepotřebujete ho znát. Musíte znát git.
Co je ale pro webového programátora povinné, je možnost používat Google. Minimálně na úrovni schopnosti zkopírovat-vložit chybovou hlášku do vyhledávacího formuláře nebo napsat otázku “Co je git” ;-)

Protože pro práci v týmu potřebujete znát nějaký systém správy verzí a git je de facto standard. Pochopit princip fungování a základní příkazy – checkout, commit, push.

Znalost HTML vám dává představu o tom, jak vytvářet webové stránky. A dokonce vám dává příležitost samostatně rozvíjet internetové zdroje. Použití tohoto značkovacího jazyka je však omezené kvůli statické povaze stránek vytvořených s jeho pomocí. Zejména se ve většině případů používá pro vývoj webových stránek s vizitkami. Jde o to, že pokud potřebujete provést nějaké změny, musíte upravit každou stránku zvlášť, a pokud jich má zdroj několik desítek nebo stovek, bude takový proces nejen únavný, ale také se časem protáhne.

Pro optimalizaci správy webu můžete použít PHP (zkratka pro PHP: Hypertext Preprocessor), skriptovací programovací jazyk, který umožňuje vytvářet dynamicky zaplňované webové stránky. Jeho použití umožňuje, aby byl zdroj skutečně interaktivní a proces správy webu byl jednoduchý a méně nákladný z hlediska úsilí. Online kurz PHP pro začátečníky od WebShake vám pomůže zvládnout základy skriptovacího jazyka od nuly, naučit se vytvářet dynamické zdroje, které se snadno upravují a udržují.

Naše textové materiály a video tutoriály jsou navrženy tak, aby byly srozumitelné každému uživateli, který se chce naučit programovat na webu. A domácí úkoly umístěné na konci každého tématu vám umožní upevnit nabyté znalosti a vypilovat jejich aplikaci v praxi.