Microsoft nabízí zdarma tyto vývojářské nástroje: Visual Studio Community, Visual Studio for Mac a Visual Studio Code. Tyto verze jsou zdarma za určitých podmínek.
Visual Studio Community je plně integrované prostředí (IDE), tj. umožňuje vytvářet a zároveň spouštět zdrojový kód. Je sice zdarma, ale člověk nikdy neví, kdy se může Microsoft rozhodnout tento proprietární vývojářský software nabízet za peníze. Na rozdíl od toho, Visual Studio Code je editor kódu, který je také od Microsoftu zdarma, ale jeho zdrojové kódy jsou k dispozici na github.com pod MIT licencí, takže by měl být snad navždy zdarma.
Pro zobrazování matematických výrazů na webu je vhodné používat např. MathML. Bohužel ho však nepodporují veškeré prohlížeče. V tomto případě nám může pomoci javascriptová knihovna MathJax, která umí zobrazit matematické výrazy prakticky do veškerých důležitých prohlížečů. Jak vypadá výsledek, se můžete podívat například na webu matematika.cz, který MathJax používá.
MathJax pracuje s MathML či LaTeX. Kód LaTeX lze zobrazit např. v editoru LYX volbou Prohlížet » Zdrojový text pro LaTeX. Do MathML umí exportovat i Vzorce z LibreOffice. Pro redakční systémy existují plaginy, které umožní integraci MathJax do redakčního systému. Je podporována Joomla, WordPress, Drupal a další…
Matematické výrazy lze HTML zapsat pomocí MathML. Podpora MathML je dobrá v pro prohlížečích Mozilla Firefox. Podporu zobrazuje stránka Mozilly Browser compatibility. Pro ozkoušení podpory MathML je dobrá testovací stránka MathML Torture Test. Dobré zobrazení MathML i v nepodporovaných prohlížečích může zajistit např. javascriptová knihovna MathJax. Grafické editory pěkně shrnuje tutoriál od Mozzily (WYSIYWG Editors).
Aktualizováno: 28. 8. 2021, datum vydání: 25. 4. 2020
Bootstrap je CSS framework. Umožňuje rychlé formátování HTML stránek za použití responzivního designu. Bootstrap 4 je starší verzí. Aktuální verze je Bootstrap 5. Rozhodla jsem se používat Bootstrap z důvodu, že umí lépe pracovat s obrázky a lépe je roztahovat dle šířky okna tak, jak potřebuji.
CodeIgniter je jedním z PHP frameworků, který poskytuje programátorovi základní funkcionalitu webové aplikace. CodeIgniter je považován za jeden z nejjednodušších PHP frameworků vhodných pro začátečníky. Používá MVC model aplikace a je rychlý, snadný na pochopení. Použití šablonovacího systému v šablonách je volitelné, do šablon můžete vkládat přímé PHP příkazy. Zda tento framework může být pro vás vhodný, záleží na velikosti a povaze vašich projektů. Pokud jste samostatný programátor a vaše aplikace nejsou příliš robusní, může být CodeIgniter správnou volbou.
CodeIgniter je vhodný pro začátečníky
V dnešní době je v zahraničí značně populární framework Laravel. Také PHP framework Symphony je hodně populární a je navíc používaný projektem Drupal. Dle tohoto videa je CodeIgniter v porovnání s Laravelem vítězem pro jednoduchý vývoj v jednom člověku, který potřebuje rychle něco naprogramovat. Křivka učení je u CodeIgniter vysoká, kdo zná principy MVC či v nějakém frameworku již programoval, CodeIgniter bude pro něj jednoduchý na pochopení.
Tento článek je psán spíš pro úplné začátečníky, kteří o SEO neví skoro vůbec nic a potřebují dostat svůj web na web. SEO je zkratka pro Search engine optimization, tedy optimalizace webu pro vyhledávání. S touto optimalizací, kterou se pak zabývají většinou weboví odborníci, souvisí první věc a to problém, jak dostat nově vzniklou webovou stránku vůbec na web a do vyhledávačů a jak získat její co nejlepší pozici ve výsledcích vyhledávání. První pozice ve výsledcích vyhledávání by chtěli všichni, ale jak asi sami tušíte, to není možné…
Mezi uznávané žebříčky používanosti a popularity programovacích jazyků patří TIOBE Programming Community Index. Je průběžně aktualizovaný a zohledňuje různá kritéria, podle kterých stanovuje pořadí jazyků. Je na něm vidět i vývoj popularity za posledních 18 let zpětně. Každý si však toto pořadí musí přebrat sám, protože každý jazyk se hodí tak trochu na něco jiného. Zde je pořadí podle TIOBE indexu ke konci roku 2019:
Aktualizováno: 22. 9. 2020, datum vydání: 23. 11. 2014
Přesměrování pomocí .htaccess
Pro úpravu URL a přesměrování lze použít na serveru Apache skrytý soubor .htaccess. Není jednoduché se naučit ho používat, protože využívá regulární výrazy obdobné Perlu. Regulární výrazy lze otestovat pomocí testeru regulárních výrazů. Jednoduché přesměrování lze provést například následujícím způsobem.
Rychlé přesměrování
Tento jednoduchý příklad přesměruje veškeré stránky na novou doménu finmat.cz
RewriteEngine on
RewriteRule (.*) http://www.finmat.cz/
Aktualizováno: 20. 6. 2020, datum vydání: 9. 2. 2014
Nejmodernější kódování v dnešní době je kódováníUTF 8. Na nově vzniklých webech bývá standardem. Jedná se o 8-bit Unicode. Je určeno pro všechny světové jazyky.
HTML či PHP stránka v UTF 8
Kód
Kódování HTML stránky lze nastavit pomocí meta tagu <meta>:
Aktualizováno: 19. 5. 2020, datum vydání: 5. 10. 2013
Jak přidat Like Button na webové stránky
Odkazy na HTML kód, který se umístí do webových stránek, jsou k dispozici v sekci pro vývojáře Social Plugins.
Ochranná známka facebook
Způsoby užití ochranné známky Facebook jsou uveřejněny na webu Facebook Brand Resource Center. Nebo-li nemůžeme si s logem facebooku dělat, co se nám zlíbí. Například nesmíme měnit jeho barvy. Na stránkách Facebooku najdeme doporučené způsoby užití loga f, like ikonky apod. Zdrojové soubory v různých formátech (PNG, EPS, SVG) lze stáhnout ve formátu zip. Co smíme a nesmíme dělat je popsáno na stránkách a před stažením souborů musíme s podmínkami užití předem souhlasit.
Aktualizováno: 22. 9. 2020, datum vydání: 6. 4. 2013
Nette GPL či BSD
Konkrétně řeším aplikaci postavenou nad frameworkem Nette. Informací ohledně licencování je na internetu jak šafránu, proto jsem si zde poznamenala pár informací a odkazů, které mi připadají užitečné a snažila se učinit nějaký závěr.
V Nette Frameworku máte na výběr, zda se rozhodnout pro licenci GPL či BSD. Po přečtení základních informací jsem měla jasno v tom, že určitě BSD. Projekt, který dělám, chci využívat i ke komerčním účelům, a pro to je čistě GPL licence nepoužitelná. Pokud jsem to dobře pochopila, tak pokud zveřejníte kód postavený na knihovnách pod licencí GPL, tak musíte svůj kód dát také pod licenci GPL. Možnost GPL licence je tam hlavně z důvodu, aby bylo možné Nette Framework přičlenit k GPL projektům.
Aktualizováno: 24. 4. 2020, datum vydání: 29. 11. 2012
Zde je příklad na otevření souboru a zápis do jiného souboru. Jedná se o naprostou jednoduchou kopii obsahu souboru.
Čtení ze souboru a zápis do souboru
Program předpokládá existenci souboru vstup.txt v adresáři C:\Users\Jitka\Desktop\pascal\. Pokud by soubor neexistoval, program je ukončen běhovou chybou.
Čtení a zápis probíhá po znacích
program ZapisDoSouboru;
uses
crt;
var
tVstup,tVystup: text;
znak: char;
begin
clrScr;
assign(tVstup, 'C:\Users\Jitka\Desktop\pascal\vstup.txt');
reset(tVstup);
assign(tVystup, 'C:\Users\Jitka\Desktop\pascal\vystup.txt');
rewrite(tVystup);
while not eof(tVstup) do
begin
read(tVstup, znak);
// write(znak); // kontrolni vypis znaku na obrazovku
write(tVystup, znak);
end;
close(tVstup);
close(tVystup);
repeat
until keyPressed;
end.
Aktualizováno: 24. 4. 2020, datum vydání: 24. 11. 2012
Uvedu příklad, jak se může pole předávat jako parametr funkce či procedury, případně být jeho návratovou hodnotou funkce.
Pro tyto účely jsem vytvořila funkci pro načtení pole, proceduru pro výpis pole a dvě procedury či funkce pro kopii pole do pole. Procedury pro kopii pole nejsou nutné, protože Pascal sám umí zkopírovat celé pole do jiného pole pomocí prostého přiřazení. Podmínkou je, že pole musí být shodného typu (viz Pavel Satrapa1). Kopírování přiřazením do proměnné probíhá kopírováním hodnotou. Mně zde funkce či procedury pro kopírování pole poslouží jako jednoduchá ukázka možné manipulace s polem. Všechna předávaná pole musí být shodného typu. Nejlépe je, si pro tento účel založit extra typ pole, a to klíčovým slovem type.
Aktualizováno: 19. 5. 2020, datum vydání: 31. 10. 2012
Poštovní server může běžet na jiném serveru (jiné IP adrese), než samotný hosting webu. V takovém případě je třeba nastavit extra MX (Mail Exchange) záznam. IP adresy zjistíte od administrátora hostingu, nebo pomocí příkazu ping na doménu.
Nastavení MX záznamu
Zde je příklad nastavení, které lze např. použít u registrátora domén a správce DNS záznamu forpsi.com. Hosting webových stránek a emailový server běží u jiného poskytovatele služeb, tj. nikoli u forpsi. Hosting je na IP 83.167.245.11 a mail je na IP 46.231.29.158.
Aktualizováno: 24. 4. 2020, datum vydání: 30. 10. 2012
Zadání příkladu
Program vyzve uživatele k zadání celého čísla. Úkolem programu je sečíst cifry čísla a vypsat tento součet. Např. když uživatel zadá „4652“ program vypíše „17“, protože 4 + 6 + 5 + 2 = 17. Zpracování ciferného součtu má být úkolem funkce, které se předá zadané načtené číslo jako parametr.
Řešení ve Free Pascalu
program CifernySoucet;
uses crt;
var n: integer;
function cifernySoucet(cislo: integer): integer;
var cifra, torzo, soucet: integer;
begin
soucet := 0;
torzo := cislo;
repeat
cifra := torzo mod 10; // dostanu posledni cifru cisla
soucet := soucet + cifra;
torzo := torzo div 10; // uriznu posledni cifru cisla
until torzo = 0;
cifernySoucet := soucet;
end;
begin
clrScr;
write('Zadejte cislo: ');
read(n);
writeln('Ciferny soucet cisla ', n, ' je ', cifernySoucet(n), '.');
repeat
until keyPressed;
end.
Aktualizováno: 24. 4. 2020, datum vydání: 28. 10. 2012
Zadání příkladu
Program vyzve uživatele k zadání celých kladných čísel. Čísla budou oddělena mezerou (případně enterem). Čísel může být libovolný počet. Čísla budou ukončena nulou. Program zjistí nejdelší shodný úsek posloupnosti čísel a vypíše délku tohoto nejdelšího úseku. Např. pro zadaná čísla „5 7 7 1 1 1 3 3 4 8 7 7 7 7 9 0“ vypíše „4“, protože nejdelší stejný úsek čísel je „7 7 7 7“ a jeho délka je čtyři.
Řešení ve Free Pascalu
program souvislyUsek;
uses crt;
var delkaAkt, delkaNej, cislo, prevCislo: integer;
begin
clrScr;
delkaAkt := 0;
delkaNej := 0;
prevCislo := 0;
write('Zadejte kladna cela cisla oddelena mezerou ukoncena nulou: ');
read(cislo);
while cislo <> 0 do
begin
if cislo = prevCislo then
begin
delkaAkt := delkaAkt + 1;
end
else // mame novy usek
begin
if delkaAkt > delkaNej then
delkaNej := delkaAkt;
delkaAkt := 1;
end;
prevCislo := cislo;
read(cislo);
end;
// pro pripad, ze by nejdelsi usek byl na konci
if delkaAkt > delkaNej then
delkaNej := delkaAkt;
writeln('Delka nejdelsiho useku je: ', delkaNej);
repeat until keyPressed;
end.
Aktualizováno: 24. 4. 2020, datum vydání: 24. 10. 2012
Zadání příkladu
Program vyzve uživatele k zadání celých kladných čísel. Čísla budou oddělena mezerou (případně enterem). Čísel může být libovolný počet. Čísla budou ukončena nulou. Program zjistí nejdelší rostoucí úsek posloupnosti čísel a vypíše délku tohoto nejdelšího úseku. Např. pro zadaná čísla „5 7 1 3 4 8 7 7 9 0“ vypíše „4“, protože nejdelší rostoucí úsek čísel je „1 3 4 8“ a jeho délka je čtyři.
Řešení ve Free Pascalu
program rostouciUsek;
uses crt;
var delkaAkt, delkaNej, cislo, prevCislo: integer;
begin
clrScr;
delkaAkt := 0;
delkaNej := 0;
prevCislo := 0;
write('Zadejte kladna cela cisla oddelena mezerou ukoncena nulou: ');
read(cislo);
while cislo <> 0 do
begin
if cislo > prevCislo then
begin
delkaAkt := delkaAkt + 1;
end
else // mame novy usek
begin
if delkaAkt > delkaNej then
delkaNej := delkaAkt;
delkaAkt := 1;
end;
prevCislo := cislo;
read(cislo);
end;
// pro pripad, ze by nejdelsi usek byl na konci
if delkaAkt > delkaNej then
delkaNej := delkaAkt;
writeln('Delka nejdelsiho rostouciho useku je: ', delkaNej);
repeat until keyPressed;
end.
Aktualizováno: 24. 4. 2020, datum vydání: 17. 10. 2012
Zadání příkladu
Program vyzve uživatele k zadání počtu čísel. Následně si vyžádá čísla oddělená mezerou (případně enterem). Čísla sečte a vypíše součet na obrazovku.
Řešení ve Free Pascalu
program soucet;
uses crt;
var suma, n, i, cislo: integer;
begin
clrscr;
write('Zadej pocet cislic: ');
readln(n);
if n > 0 then
begin
suma := 0;
write('Zadej cislice oddelene mezerou: ');
for i := 1 to n do
begin
read(cislo);
suma := suma + cislo;
end;
writeln('Soucet vsech cisel je: ', suma);
repeat until keypressed;
end;
end.
Aktualizováno: 24. 4. 2020, datum vydání: 17. 10. 2012
Zadání příkladu
Program vyzve uživatele k zadání počtu čísel. Následně si vyžádá čísla a zjistí z nich maximální hodnotu a četnost výskytu této maximální hodnoty. Zjištěné údaje vypíše na obrazovku.
Řešení ve Free Pascalu
program maximum;
uses crt;
var max, n, i, cislo, cetnost: integer;
begin
clrscr;
write('Zadej pocet cifer: ');
readln(n);
if n > 0 then
begin
max := -MAXINT;
cetnost := 0;
for i := 1 to n do
begin
write('Zadej ', i, '. cislo: ');
readln(cislo);
if cislo > max then
begin
max := cislo;
cetnost := 0;
end;
if cislo = max then
cetnost := cetnost + 1;
end;
writeln('Maximum ze zadanych cisel je: ', max);
writeln('Pocet vyskytu maxima (cetnost) je: ', cetnost);
repeat until keypressed;
end;
end.
Aktualizováno: 24. 4. 2020, datum vydání: 10. 10. 2012
Program podle věku určí, zda je člověk starý či mladý. Berte program s rezervou :).
Jde o jednoduchý příklad pro začátečníky pro procvičení podmínky if a čtení vstupů a výstupů.
Zdrojový kód Free Pascal
program Stari;
var vek: integer;
begin
write('Zadej vek: ');
readln(vek);
if vek < 20 then
write('Jsi jeste mlady, to se mas.')
else
write('Tak to jsi uz pekne stary :-).');
readln;
end.
Aktualizováno: 24. 11. 2019, datum vydání: 15. 9. 2012
Soubor .htaccess
Zakázat přístup do určitého adresáře na webovém serveru Apache (např. adresáře s knihovnami php funkcí či jinými includovanými soubory) můžete jednoduše tak, že do daného adresáře umístíte skrytý soubor .htaccess. To, že soubor je skrytý, zajišťuje název souboru začínající tečkou. Jde o textový soubor, ale bez přípony txt.
Aktualizováno: 9. 12. 2020, datum vydání: 20. 2. 2012
Před použitím daného programovacího jazyka (resp. vývojového prostředí) si ověřte aktuální znění licencí a legálnost použití jazyků pro vaše účely. Licence se mohou změnit a za správnost níže uvedeného výčtu ruku do ohně nedám.
Jde o distribuci Javy verze 8 firmou Oracle. Tato distribuce je ještě pod licencí svobodného software: GPLv2 na rozdíl např. od distribuce Oracle Java SE, která již podléhá nové přísnější Oracle licenci, jež zakazuje komerční použití bez předplatného. Oracle v roce 2019 značně změnil a zpřísnil licenční podmínky pro použití Javy.
C# byl vyvinut firmou Microsoft a pracuje s ním převážně vývojové prostředí Visual Studia od Microsoftu. Visual Studio Community 2019 je bezplatné integrované vývojové prostředí (IDE) pro studenty, vývojáře pro open-source a individuální vývojáře. Samostatní vývojáři mohou se sadou Visual Studio Community vytvářet své vlastní bezplatné i placené aplikace, blíže viz licenční podmínky.
Visual Studio Community 2019 pracuje s jazyky C#, .NET a C++, VisualBasic - možné distribuovat uzavřený kód. Pokročilejší věci jsou ale k dispozici v placených verzích Microsoft Visual Studia a nikoli v edici Community, která je zdarma.
Kromě Visual Studia jsou k dispozici i jiné kompilátory C#, které jsou pod free licencemi.
Open source. PHP Licensing - licence ve stylu BSD licence bez omezení "copyleft". PHP je obvykle využito s databází MySQL (MariaDB) či PostgreSQL a webovým serverem Apache.
Kompilátor Free Pascal je k dispozici zdarma pod licencí GNU General Public License. V původním pascalu toho asi moc kromě školních příkladů nenapíšete.
Nicméně zajímavý je již Lazarus, což je profesionální Free Pascal RAD IDE. Měl by být kompatibilní s Delphi. Můžete v něm vytvářet rozličný software pod open source či komerční licencí. Editor kódu Atom by měl mít balíček s podporou Pascalu.
Ruby se stalo slavným po uvedení frameworku Ruby on Rails. Jde o framework implementující MVC model-view-controller architekturu. Ruby on Rails je pod MIT licence. Ruby je open source.
Aktualizováno: 12. 11. 2019, datum vydání: 18. 11. 2011
Pro zvýraznění syntaxe zdrojových souborů programovacích jazyků jsem si stáhla SyntaxHighlighter 3.0.83. Jde o zvýrazňovač syntaxe napsaný v JavaScriptu. SyntaxHighlighter dokáže automaticky naformátovat kód podle syntaxe daného jazyka, který máte napsaný v HTML v tagu <pre>.
Implemantace
Jeho implementace do webových stránek je celkem jednoduchá. Aktuální SyntaxHighlighter je k dispozici ke stažení na GitHubu. Následující poznámky se týkají starší verze 3.0.83.
Aktualizováno: 24. 4. 2020, datum vydání: 17. 11. 2011
Program vypíše v pořadí druhé maximum ze zadaných čísel. Skonční zadáním čísla -999. Pokud jsou některá čísla shodná (např. 5 5 9 9 1 2), vypíše jako druhé maximum číslo 5.
Zdrojový kód Free Pascal
program DruheMaximum;
uses crt;
var cislo, max, max2: Integer;
begin
clrScr;
writeln('Program vypise druhe nejvetsi cislo ze zadanych celych cisel. Konec = -999.');
max := -MAXINT; //-32768
max2 := max;
repeat
write('Zadejte cislo: ');
readln(cislo);
if (cislo <> -999) then
begin
if (cislo > max) then
begin
max2 := max;
max := cislo;
end
else
if ((cislo < max) and (cislo > max2)) then // cislo je mezi dosavadnim maximem a druhym maximem a neni rovno maximu
max2 := cislo;
end;
until (cislo = -999);
writeln('Druhe nejvetsi cislo ze zadanych cisel je: ', max2);
repeat
until keyPressed;
end.
Aktualizováno: 24. 4. 2020, datum vydání: 17. 11. 2011
Program vytiskne maximum ze zadaných čísel. Po zadání čísla -999 program skončí.
Zdrojový kód Free Pascal
While cyklus
program Maximum;
uses crt;
var cislo, max: integer;
begin
clrScr;
writeln('Program vypise maximum ze zadanych celych cisel. Konec = -999.');
max := -MAXINT; //-32768
write('Zadejte cislo: ');
readln(cislo);
while (cislo <> -999) do
begin
if (cislo > max) then
max := cislo;
write('Zadejte cislo: ');
readln(cislo);
end;
writeln('Maximum ze zadanych cisel je: ', max);
repeat
until keyPressed;
end.
Aktualizováno: 24. 4. 2020, datum vydání: 14. 11. 2011
Program spočítá podíl dvou celých čísel. Vrátí celočíselný výsledek a k němu zbytek. Dále vrátí reálný výsledek.
Zdrojový kód Free Pascal
program PodilDvouCisel;
uses crt;
var
a, b, c, zbytek: integer;
cReal: real;
begin
clrScr;
// nacteni vstupu
writeln('Program pocita celociselny a realny podil dvou celych cisel A a B.');
write('Zadejte cislo A (delence): ');
readln(a);
write('Zadejte cislo B (delitele): ');
readln(b);
// vypocet a zobrazeni vystupu
if (b = 0) then
begin
writeln('Nulou nelze delit!');
end
else
begin
// celociselne deleni
c := a div b;
zbytek := a mod b; // zbytek po celociselnem deleni
writeln('Celociselny podil A div B = ', c);
writeln('Zbytek po celociselnem deleni A mod B = ', zbytek);
// realne deleni
cReal := a / b;
writeln('Realny podil A/B = ', cReal:7:5); // zobrazeni na 5 desetinnych mist
end;
repeat
until keyPressed;
end.
Aktualizováno: 24. 4. 2020, datum vydání: 23. 4. 2011
Program vytiskne prvočísla do zadané hodnoty N. Použije se při tom algoritmu tzv. Eratosthenova síta.
Zdrojový kód Free Pascal
program Prvocisla;
uses Crt;
const MAX_N = 10000;
var
n, i, nasobek: integer;
sito: array[2..MAX_N] of boolean; // true = je prvocislo, false = neni prvocislo
begin
clrScr;
writeln('Program vypise prvocisla do zadane hodnoty N <= ', MAX_N);
write('Zadejte kladne cele cislo N: ');
readln(n);
if (n > 0) and (n <= MAX_N) then
begin
for i := 2 to n do
sito[i] := true; // nastavime vsechna cisla na prvocisla
for i := 2 to n do
begin
if sito[i] then // pokud je prvocislo
begin
nasobek := 2 * i;
while nasobek <= n do
begin
sito[nasobek] := false; // nasobky nejsou prvocisla
nasobek := nasobek + i;
end;
end
end;
// vytiskneme prvocisla
write('Prvocisla jsou: ');
for i := 2 to n do
begin
if (sito[i]) then
write(i, ' ');
end;
end;
repeat
until keyPressed;
end.
Aktualizováno: 10. 11. 2019, datum vydání: 23. 4. 2011
Hledáte funkci, která by určila, zda je rok přestupný či nikoli? Zde je připravena jednoduchá funkce napsaná v PHP, která vrátí True nebo False podle toho, zda je zadaný rok v parametru přestupný. Pokud znáte pak běžnou délku měsíců v roce, jste si už schopni sami naprogramovat vlastní kalendář. V dnešní době se používá tzv. gregoriánský kalednář...
Pro programování v pascalu lze využívat Free Pascal.
PHP a MySQL
Pro editaci kódu používám zatím jednoduchý textový editor PSPad dostupný zdarma. PSPad umí syntaxi PHP a připojení na FTP.
Pro zkoušení skriptů PHP a databáze MySQL můžete využívat hostingy zdarma či jinou širokou nabídku hostingů. Jde o hosting zdarma s reklamní lištou, ale ta příliš neruší a neovlivňuje html soubory - zdrojové html soubory zůstávají v původním tvaru. Nejlepší bude, když si zřídíte na něm vlastní účet, který pak budete používat.
EasyPHP
Pokud chcete provozovat PHP a MySQL jednoduše přímo na svém počítači, tak doporučuji nainstalovat například EasyPHP či ještě lépe XAMPP (Apache + MariaDB + PHP + Perl).