330 lines
7.2 KiB
Markdown
330 lines
7.2 KiB
Markdown
|
# Ressourcen
|
||
|
|
||
|
Aktuellste Version dieses Dokuments und der gezeigten Code-Beispiele
|
||
|
https://github.com/janunger/rheinwerk-video-training
|
||
|
|
||
|
|
||
|
|
||
|
## Kapitel 1 - Entwicklerwerkzeuge für PHP einrichten
|
||
|
|
||
|
### Lektion 1.6 - Einen lokalen Webserver für Windows einrichten
|
||
|
|
||
|
XAMPP
|
||
|
https://www.apachefriends.org/de/
|
||
|
|
||
|
### Lektion 1.7 - Einen lokalen Webserver für Mac-Systeme einrichten
|
||
|
|
||
|
MAMP
|
||
|
https://www.mamp.info/de/
|
||
|
|
||
|
### Lektion 1.8 - Die Entwicklungsumgebung PhpStorm installieren
|
||
|
|
||
|
PhpStorm
|
||
|
https://www.jetbrains.com/phpstorm/
|
||
|
|
||
|
Web Developer für Google Chrome
|
||
|
https://chrome.google.com/webstore/detail/web-developer/bfbameneiokkgbdmiekhjnmfkcnldhhm
|
||
|
|
||
|
|
||
|
|
||
|
## Kapitel 2 - Grundlagen der PHP-Programmierung
|
||
|
|
||
|
### Lektion 2.7 und 2.8 - Kontrollstrukturen, Verzweigungen, Schleifen
|
||
|
|
||
|
Vergleichs-Operatoren
|
||
|
http://php.net/manual/de/language.operators.comparison.php
|
||
|
|
||
|
Kontrollstrukturen
|
||
|
http://php.net/manual/de/language.control-structures.php
|
||
|
|
||
|
### Lektion 2.9 - Mit Zahlen rechnen
|
||
|
|
||
|
BCMath Rechnen mit beliebiger Genauigkeit
|
||
|
http://php.net/manual/de/book.bc.php
|
||
|
|
||
|
### Lektion 2.12 - Vordefinierte Variablen: $_GET und $_POST
|
||
|
|
||
|
Superglobals
|
||
|
http://php.net/manual/de/language.variables.superglobals.php
|
||
|
|
||
|
|
||
|
|
||
|
## Kapitel 3 - PHP-Programme schreiben
|
||
|
|
||
|
### Lektion 3.3 - PHP-Funktionen verwenden
|
||
|
|
||
|
Funktionsreferenz
|
||
|
http://php.net/manual/de/funcref.php
|
||
|
|
||
|
Zeichenketten
|
||
|
http://php.net/manual/de/book.strings.php
|
||
|
|
||
|
Ortszeit/Datum formatieren
|
||
|
http://php.net/manual/de/function.date.php
|
||
|
|
||
|
Mathematische Funktionen
|
||
|
http://php.net/manual/de/ref.math.php
|
||
|
|
||
|
### Lektion 3.4 - Fehlersuche und Debugging
|
||
|
|
||
|
var_dump
|
||
|
http://php.net/manual/de/function.var-dump.php
|
||
|
|
||
|
Xdebug
|
||
|
https://xdebug.org/
|
||
|
|
||
|
Xdebug helper für Google Chrome
|
||
|
https://chrome.google.com/webstore/detail/xdebug-helper/eadndfjplgieldjbigjakmdgkmoaaaoc
|
||
|
|
||
|
|
||
|
|
||
|
## Kapitel 4 - Objektorientierte Programmierung mit PHP
|
||
|
|
||
|
### Lektion 4.2 - Klassen und Objekte
|
||
|
|
||
|
"Objektorientierte Programmierung" von Bernhard Lahres, Gregor Rayman
|
||
|
http://openbook.rheinwerk-verlag.de/oop/
|
||
|
|
||
|
"Clean Code - Refactoring, Patterns, Testen und Techniken für sauberen Code: Deutsche Ausgabe" von Robert C. Martin
|
||
|
https://www.amazon.de/dp/3826655486/
|
||
|
|
||
|
### Lektion 4.4 - Vordefinierte PHP-Klassen nutzen
|
||
|
|
||
|
Zeitzonen
|
||
|
http://www.zeitzonen.de/
|
||
|
|
||
|
Unixzeit
|
||
|
https://de.wikipedia.org/wiki/Unixzeit
|
||
|
|
||
|
### Lektion 4.5 - Den PHP-Code gliedern per Auto-Loading
|
||
|
|
||
|
Anonyme Funktionen
|
||
|
http://php.net/manual/de/functions.anonymous.php
|
||
|
|
||
|
### Lektion 4.9 - Entwurfsmuster anwenden
|
||
|
|
||
|
Entwurfsmuster
|
||
|
https://de.wikipedia.org/wiki/Entwurfsmuster
|
||
|
|
||
|
"Design Patterns. Elements of Reusable Object-Oriented Software" von Erich Gamma, Richard Helm, Ralph Johnson und John Vlissides
|
||
|
https://de.wikipedia.org/wiki/Entwurfsmuster_(Buch)
|
||
|
|
||
|
"PHP Design Patterns" von Stephan Schmidt
|
||
|
https://www.amazon.de/PHP-Design-Patterns-Stephan-Schmidt/dp/389721864X
|
||
|
|
||
|
|
||
|
|
||
|
## Kapitel 5 - Webtechniken und Datenaustausch
|
||
|
|
||
|
### Lektion 5.7 - Daten in Dateien schreiben
|
||
|
|
||
|
fopen
|
||
|
http://php.net/manual/de/function.fopen.php
|
||
|
|
||
|
### Lektion 5.8 - Daten aus Dateien herauslesen
|
||
|
|
||
|
fread
|
||
|
http://php.net/manual/de/function.fread.php
|
||
|
|
||
|
fgetcsv
|
||
|
http://php.net/manual/de/function.fgetcsv.php
|
||
|
|
||
|
### Lektion 5.9 - JSON: Asynchrone JavaScript Requests
|
||
|
|
||
|
jQuery UI Autocomplete - Remote datasource
|
||
|
https://jqueryui.com/autocomplete/#remote
|
||
|
|
||
|
JSON
|
||
|
https://de.wikipedia.org/wiki/JavaScript_Object_Notation
|
||
|
|
||
|
### Lektion 5.10 - Bilder und Grafiken mit PHP bearbeiten
|
||
|
|
||
|
Bildbearbeitung und GD
|
||
|
http://php.net/manual/de/book.image.php
|
||
|
|
||
|
### Lektion 5.11 - PDF-Dokumente erstellen
|
||
|
|
||
|
FPDF
|
||
|
http://www.fpdf.org/
|
||
|
|
||
|
|
||
|
|
||
|
## Kapitel 6 - Datenbanken verwalten mit MySQL & Co.
|
||
|
|
||
|
### Lektion 6.3 - Eine Datenbank verwalten mit phpMyAdmin
|
||
|
|
||
|
Datentypen in MySQL
|
||
|
http://dev.mysql.com/doc/refman/5.7/en/data-types.html
|
||
|
|
||
|
### Lektion 6.9 - Weitere Datenbanksysteme im Überblick
|
||
|
|
||
|
MariaDB
|
||
|
https://de.wikipedia.org/wiki/MariaDB
|
||
|
|
||
|
SQLite
|
||
|
https://de.wikipedia.org/wiki/SQLite
|
||
|
|
||
|
PostgreSQL
|
||
|
https://de.wikipedia.org/wiki/PostgreSQL
|
||
|
|
||
|
SQLite, MySQL und PostgreSQL im Vergleich
|
||
|
https://www.digitalocean.com/community/tutorials/sqlite-vs-mysql-vs-postgresql-a-comparison-of-relational-database-management-systems
|
||
|
|
||
|
Microsoft SQL Server
|
||
|
https://de.wikipedia.org/wiki/Microsoft_SQL_Server
|
||
|
|
||
|
Oracle Database
|
||
|
https://de.wikipedia.org/wiki/Oracle_(Datenbanksystem)
|
||
|
|
||
|
MongoDB
|
||
|
https://de.wikipedia.org/wiki/MongoDB
|
||
|
|
||
|
Neo4j
|
||
|
https://de.wikipedia.org/wiki/Neo4j
|
||
|
|
||
|
|
||
|
|
||
|
## Kapitel 7 - Webanwendungen mit PHP erweitern
|
||
|
|
||
|
### Lektion 7.2 - Content Management Systeme im Überblick
|
||
|
|
||
|
Content Management System
|
||
|
https://de.wikipedia.org/wiki/Content-Management-System
|
||
|
|
||
|
WordPress
|
||
|
https://de.wordpress.org/
|
||
|
|
||
|
WordPress Themes
|
||
|
https://de.wordpress.org/themes
|
||
|
|
||
|
WordPress als Software-as-a-Service
|
||
|
https://de.wordpress.com/
|
||
|
|
||
|
Joomla
|
||
|
https://www.joomla.de/
|
||
|
|
||
|
Drupal
|
||
|
https://www.drupal.org/
|
||
|
|
||
|
Typo3
|
||
|
https://typo3.org/
|
||
|
|
||
|
### Lektion 7.3 - E-Commerce und Shopsysteme
|
||
|
|
||
|
WooCommerce
|
||
|
https://woocommerce.com/
|
||
|
https://de.wordpress.org/plugins/woocommerce/
|
||
|
|
||
|
Magento
|
||
|
https://magento.com/
|
||
|
|
||
|
Shopware
|
||
|
https://de.shopware.com/
|
||
|
|
||
|
### Lektion 7.4 - WordPress installieren
|
||
|
|
||
|
WordPress herunterladen
|
||
|
https://de.wordpress.org/txt-download/
|
||
|
|
||
|
### Lektion 7.5 - Ein eigenes WordPress-Plugin entwickeln
|
||
|
|
||
|
Ein Plugin schreiben
|
||
|
https://codex.wordpress.org/Writing_a_Plugin
|
||
|
|
||
|
Plugin API
|
||
|
https://codex.wordpress.org/Plugin_API
|
||
|
|
||
|
|
||
|
|
||
|
## Kapitel 8 - Sichere Webanwendungen mit PHP
|
||
|
|
||
|
### Lektion 8.2 - Sicherheit von Webanwendungen verbessern
|
||
|
|
||
|
OWASP (Open Web Application Security Project)
|
||
|
https://www.owasp.org/
|
||
|
|
||
|
OWASP Top 10
|
||
|
https://www.owasp.org/images/4/42/OWASP_Top_10_2013_DE_Version_1_0.pdf
|
||
|
|
||
|
Die Grundlagen der Web-Anwendungs-Sicherheit
|
||
|
http://martinfowler.com/articles/web-security-basics.html
|
||
|
|
||
|
### Lektion 8.5 - Passwörter richtig verschlüsseln
|
||
|
|
||
|
Password Hashing Funktionen
|
||
|
http://php.net/manual/de/ref.password.php
|
||
|
|
||
|
bcrypt
|
||
|
https://de.wikipedia.org/wiki/Bcrypt
|
||
|
|
||
|
### Lektion 8.6 - Kleines Einmaleins der sicheren Webanwendung
|
||
|
|
||
|
htmlspecialchars
|
||
|
http://php.net/manual/de/function.htmlspecialchars.php
|
||
|
|
||
|
filter_var
|
||
|
http://php.net/manual/de/function.filter-var.php
|
||
|
http://php.net/manual/de/filter.filters.php
|
||
|
|
||
|
|
||
|
|
||
|
## Kapitel 9 - Webanwendungen verwalten
|
||
|
|
||
|
### Lektion 9.2 - Ein FTP-Programm einrichten
|
||
|
|
||
|
Hosting-Anbieter
|
||
|
https://www.hosteurope.de/
|
||
|
https://hosting.1und1.de/webhosting?linkId=hd.subnav.webhosting
|
||
|
https://www.strato.de/
|
||
|
https://uberspace.de/
|
||
|
|
||
|
FTP-Programm Cyberduck
|
||
|
https://cyberduck.io/
|
||
|
|
||
|
### Lektion 9.5 - Die Konfigurationsmöglichkeiten der php.ini nutzen
|
||
|
|
||
|
Die Konfigurationsdatei php.ini
|
||
|
http://php.net/manual/de/configuration.file.php
|
||
|
|
||
|
Liste der php.ini-Direktiven
|
||
|
http://php.net/manual/de/ini.list.php
|
||
|
|
||
|
|
||
|
|
||
|
## Kapitel 10 - Fortgeschrittene Techniken
|
||
|
|
||
|
### Lektion 10.2 - PHP-Bibliotheken nutzen mit Composer und Packagist
|
||
|
|
||
|
Composer
|
||
|
https://getcomposer.org/
|
||
|
|
||
|
Packagist
|
||
|
https://packagist.org/
|
||
|
|
||
|
### Lektion 10.3 - PHP-Frameworks: Symfony, Zend Framework und andere
|
||
|
|
||
|
Symfony
|
||
|
http://symfony.com/
|
||
|
|
||
|
Zend Framework
|
||
|
https://framework.zend.com/
|
||
|
|
||
|
Laravel
|
||
|
https://laravel.com/
|
||
|
|
||
|
Silex
|
||
|
http://silex.sensiolabs.org/
|
||
|
|
||
|
Slim
|
||
|
http://www.slimframework.com/
|
||
|
|
||
|
### Lektion 10.5 - Automatisierte Tests mit PHPUnit
|
||
|
|
||
|
Testautomatisierung
|
||
|
https://de.wikipedia.org/wiki/Testautomatisierung
|
||
|
|
||
|
PHPUnit
|
||
|
https://phpunit.de/
|
||
|
|
||
|
"Growing Object-Oriented Software Guided by Tests" von Steve Freeman und Nat Pryce
|
||
|
http://www.growing-object-oriented-software.com/
|