[Tutorial] PHPStorm und Yii Advanced Setup #1

Heute setzen wir die ersten Teile des Projekts richtig auf. Wir möchten die Webseite lokal entwickeln, unser Augenmerk liegt auf Yii und, weil ich Student bin, nutze ich die für mich kostenlose PHPStorm IDE.

1. PHPStorm runterladen

PHPStorm ist die Entwicklungsumgebung, in die ich meinen Code hacken möchte. Wenn du Student bist, schau hier vorbei, wenn nicht gibt es trotzdem viele Ausnahmen, bei denen du PHPStorm gratis bekommen kannst. Diese stehen hier rechts. Ansonsten greift auf eine Alternative wie Eclipse oder Sublime zurück. Bei der Installation passiert nicht viel Spannendes, die kriegt man ohne Erklärung hin 🙂 Am Ende erstellt ihr ein neues Projekt und fertig.

2. Yii runterladen

Auf der Yii Website findet ihr den Download. Es gibt zwei Versionen, wir nehmen natürlich die neuere 2.0 Version. Hier gibt es wieder zwei Möglichkeiten, eine Basic Variante und eine Advanced Variante. Hier die Unterschiede1:

Feature Basic Advanced
Project structure
Site controller
User login/logout
Forms
DB connection
Console command
Asset bundle
Codeception tests
Twitter Bootstrap
Front- and back-end apps  
Ready to use User model  
User signup and password restore  

Wie es aussieht ist die Advanced Version der Basic Version ähnlich, nur mit mehr Features. Größter Unterschied ist wohl die Frontend-Backend-Aufteilung. Wir nehmen mal die Advanced Version, User Signup klingt hier nämlich sehr nützlich.

3. Xampp runterladen

Damit der PHP-Code auch auf unserem Rechner läuft, brauchen wir etwas, das einen Server simuliert und PHP interpretiert. Das ist Xampp.

4. Yii ins Projekt einbinden

Dafür entpackt ihr eure Version einfach und zieht sie in den Projektordner. Sollte dann so aussehen.

adv_yii

Legt euer Projekt am besten in C:/xampp/htdocs/Projektname an. Wenn ihr nicht PHPStorm nutzt, startet das Xampp Control Panel und startet dort Apache. Jetzt könnt ihr im Browser localhost/Projektname aufrufen.

Wenn ihr nun zum Beispiel frontend/views/site/index.php öffnet, kann man in PHPStorm solche Seiten über versteckte Knöpfe gleich im Browser starten (oder auch Alt+F2). Macht ihr das jetzt, kommt leider nur ein 502er Fehler. Wie kriegt man das also zum Laufen?

5. Xampp einbinden

phpStorm Start

Zuerst müssen wir in die Settings, Strg+Alt+S. Hier müssen wir unter PHP den Interpreter einstellen, der bei Xampp dabei war. Der Pfad dahin ist C:/xampp/php . Benennt ihn noch oben zur Wiedererkennung.

pfad

Eingestellt sieht das dann so aus:

phpstormsettings

Wenn wir jetzt noch einmal die Seite aufrufen, steht da sowas:

Fatal error: Using $this when not in object context in C:\Users\fgell_000\PhpstormProjects\Diarium2.0\advanced\frontend\views\site\index.php on line 3

Das klingt irgendwie nicht so gut … ist es aber! PHP läuft und gibt Fehler zurück! Toll, oder? 😀 Na ja, eine hübsche Webseite wäre schon besser, also auf zum nächsten Schritt.

6. Gefährlich aussehende Kommandozeilen

Ja, wir müssen was ins Terminal eingeben, aber das ist gar nicht so schwer. Zuerst geht ihr in euren Projektordner und dort in den Advanced Ordner von Yii. Hier startet ihr die Konsole mit Shift+Rechtsklick, dann kommt die unterstrichene Option.

Eingabeaufforderung

 

Die Konsole geht auf und ihr gebt Folgendes ein: php init (wenn php nicht gefunden wird, gebt das ein: C:\xampp\php\php.exe init ). Wir befinden uns in der Entwicklung, also wählt Development mit 0 und dann tippt noch einmal yes, wenn er  danach fragt.

konsoleYii

… initialization completed. Ihr könnt die Konsole schließen und noch einmal auf die Webseite zugreifen. Jetzt sollte sie ungefähr so aussehen:

Yii_Congratiulations

Supernice! Ersetzt oben in der URL frontend mit backend und ihr kommt auf eine Login-Seite. Diese benötigt das Aufsetzen einer Datenbank unter localhost/phpmyadmin, dafür habe ich jetzt aber keine Zeit mehr. Yii scheint sehr mächtig zu sein und ich bin mir nicht mehr sicher, ob Angular überhaupt von Nöten sein wird. Yii und Angular funktionieren aber definitiv zusammen, wenn man das will.

Ich hoffe, dieses Tutorial war hilfreich und bis nächste Woche! Hier gehts zu Teil 2.

*geht Jurassic World im Kino gucken*