


PHP-Entwicklungsframework Yii Framework-Tutorial (4) Beispiel für ein Hangman-Wortratespiel
Mit dem vorherigen „Hello, World“-Beispiel und der Einführung in die Grundlagen von Yii Framework-Webanwendungen können wir mit der Einführung einer einfachen, aber relativ vollständigen Webanwendung beginnen – Hangman (Ratespiel). Dieses Beispiel wird mit Yii Development geliefert Paket freigegeben. Anhand dieses Beispiels können Sie die grundlegenden Schritte der Entwicklung von Yii-Anwendungen verstehen.
Apropos „Hangman“: Es erinnert mich an das „Ratespiel“, das ich Ende der 1980er Jahre auf dem CPC464-Computer gespielt habe. Henker, jedes Mal habe ich falsch geraten. Einmal wurde ein Bösewicht einen Schritt näher an den Galgen gebracht. DOS war damals gerade herausgekommen :-).
Um eine Webanwendung zu entwickeln, ist der erste Schritt die Durchführung einer Anforderungsanalyse. Diese ist nicht in diesem Tutorial enthalten, aber der Vollständigkeit halber sind unten die Regeln des „Ratespiels“ aufgeführt:
Rate das Wort Das Spiel (englisch: Hangman, was „Gehängter“ bedeutet) ist ein Spiel für zwei Spieler. Ein Spieler denkt sich ein Wort aus und der andere Spieler versucht, jeden Buchstaben des Wortes zu erraten, an das der Spieler denkt.
Das zu erratende Wort wird durch eine Spalte aus horizontalen Linien dargestellt, die den Spielern mitteilen, wie viele Buchstaben das Wort hat. Wenn der Ratespieler einen der Buchstaben richtig errät, muss der andere Spieler diesen Buchstaben an allen Stellen schreiben, an denen er vorkommt. Wenn der erratene Buchstabe nicht im Wort vorkommt, zeichnet der andere Spieler einen der Striche der Hängepuppe. Das Spiel endet in den folgenden Situationen:
„Ich möchte das T-Wort.“ „Ja, auf dem achten und elften Platz.“ das Wort Der Spieler hat alle Buchstaben erraten oder das ganze Wort erraten
Der andere Spieler hat das vollständige Bild gezeichnet:
Das heutige Beispiel zeichnet nicht „Der Gehängte“, erraten Sie es richtig Wenn Sie falsch raten, wird „Sie gewinnen“ angezeigt, wenn Sie falsch raten, wird „Sie verlieren“ angezeigt. Daher können wir vier Seiten entwerfen:
Diese vier Seiten entsprechen dem Yii-Framework als vier Ansichten, die jeweils als Spielen, Raten, Gewinnen, Verlieren bezeichnet werden können Jede Seite Zeigt den Titel „Hangman Game“ an, sodass Sie eine „MasterPage“ entwerfen und in Yii zu einer Layoutvorlage für vier Ansichten zum Teilen werden können. Die Yii-Anwendung übernimmt das MVC-Entwurfsmuster, sodass wir einen Controller->GameController für vier Ansichten entwerfen können.
Im vorherigen Tutorial wurde gesagt, dass die Yii-Anwendung die Standardverzeichnisstruktur verwendet, um verschiedene Teile der Anwendung zu speichern. Verwenden Sie die von Yii bereitgestellten Tools, um ein Standardprojektverzeichnis hinzuzufügen. Ich persönlich bevorzuge es jedoch, jedes Verzeichnis selbst zu erstellen, sodass die Verzeichnisstruktur des Projekts basierend auf den oben genannten Anforderungen und dem Schnittstellendesign wie folgt erstellt werden kann:
Die Die erstellte GameController.php wird im Verzeichnis protected/controller abgelegt.
Die vier erstellten Ansichten „guest.php“, „lose.php“, „play.php“ und „win.php“ werden im Verzeichnis protected/views/game abgelegt. Der Verzeichnisname game entspricht dem von GameController erstellten freigegebenen Layout.
und wird im Verzeichnis protected/views/layout abgelegt. Der Standardlayoutname lautet main.php
Anwendungskonfigurationsdatei Platzieren Sie es in protected/config. Die Standardkonfigurationsdatei ist main.php
Das Anwendungseintragsskript ist index.php
Außerdem ist die Textdatei zum Erraten von Wörtern word.txt
1. Werfen wir zunächst einen Blick auf die Konfigurationsdatei protected/config/main.php
return array( 'name'=>'Hangman Game', 'defaultController'=>'game', 'components'=>array( 'urlManager'=>array( 'urlFormat'=>'path', 'rules'=>array( 'game/guess/'=>'game/guess',),), ),);
2. Mit dieser Konfigurationsdatei können Sie sie im Eingabeskript index.php jeder Yii-Anwendung verwenden. In den meisten Fällen handelt es sich um Kopieren und Einfügen
3. Definieren Sie dann die von View verwendete Layoutdatei „protected/views/layout/main.php“. Die Anwendung kann das von View verwendete Layout ändern Ich möchte nur den Standardlayoutnamen main.4. Sie können die vier Ansichten einzeln definieren. Sie sind hier nicht aufgeführt:
Sie können sehen, dass es sich im Wesentlichen um HTML handelt und CHtml eine vom Yii-Framework unterstützte Hilfsklasse ist, die beim Generieren von HTML-Code hilft. Hangman ist relativ einfach, verwendet also kein separates Modell, sondern übergibt Parameter per Render-Push.
Sie müssen CController::render() aufrufen, indem Sie den Namen der Ansicht übergeben. Diese Methode sucht nach der entsprechenden Ansichtsdatei im Verzeichnis protected/views/ControllerID.
Innerhalb des Ansichtsskripts können wir über $this-> auf die Controller-Instanz zugreifen ; propertyName-Methode zum Abrufen einer beliebigen Eigenschaft des Controllers.
Wir können auch die folgende Push-Methode verwenden, um Daten an die Ansicht zu übergeben:
$this->render('edit', array (
'var1'=>$value1,
'var2'=>$value2,
));
In der obigen Methode die render()-Methode Extrahiert den zweiten Parameter des Arrays in die Variable. Das Ergebnis ist, dass wir im Ansichtsskript direkt auf die Variablen $var1 und $var2 zugreifen können.
5 Nachdem Sie das Layout und die Ansicht definiert haben Schreiben Sie GameController,
Im Allgemeinen ist die Standardaktion durch $defaultAction geändert. Wenn in diesem Beispiel die URL http://127.0.0.1:8888/yii/demos/hangman/
lautet, dann verwenden Sie http://127.0.0.1:8888/yii/demos/hangman/index.php und verwenden Sie http: //127.0 .0.1:8888/yii/demos/hangman/index.php?game/play hat den gleichen Effekt. Der Standard-Controller ist GameController und die Standardaktion von GameController ist Spielen.
Aktion (Aktion) kann als Methode definiert werden, deren Name das Wort Aktion ist. Hangman definiert drei Aktionen: actionPlay, actionGuess, actionGiveup, GameController, andere Methoden und Attribute sowie generierte Wörter. Die spezifische Spiellogik hat wenig mit dem Yii-Framework zu tun und wird nicht vorgestellt.
6. Schauen Sie sich zunächst die Standard-PlayAction an. Dies ist die vom Benutzer aufgerufene Standardmethode, das heißt, wenn die Benutzergruppenadressleiste http://127.0.0.1:8888/yii/demos eingibt /hangman / Von index.php aufgerufene Aktion (oder http://127.0.0.1:8888/yii/demos/hangman/index.php?game/play).
Diese Methode definiert die drei Schwierigkeitsgrade des Spiels, $levels, mit zwei Zweigen. Wenn kein Schwierigkeitsgrad ausgewählt ist, $this->render(' play'. ,$params), zeigen Sie die Wiedergabeseite an, verschieben Sie $params (Array) in die entsprechende Ansicht, protected/views/play.php, siehe Definition von Ansicht oben:
View verwendet Radiobutton, um die durch $levels definierte Liste anzuzeigen.
Wenn der Benutzer den Schwierigkeitsgrad auswählt, speichern Sie den Level, die Wörter usw. in den vom GameController definierten Attributen, z. B. Wort, Level usw. GameController und CController sind ebenfalls Unterklassen von CComponent und unterstützen Attributfunktionen ähnlich wie C# und Java. Weitere Details werden später bekannt gegeben.
Dann rufen Sie $this->render(‘guess’); auf, um die Guess-Seite anzuzeigen.
Guess-Seiteguest.php ist wie folgt definiert:
In View können Sie über $this direkt auf die Methoden und Eigenschaften des entsprechenden Controller-Instanzobjekts zugreifen. Zum Beispiel $this->guessWord, $this->isGuessed(chr($i)) usw.
Klicken Sie auf 26 Buchstaben, um „guessAction“ auszulösen (array('submit'=>array('guess','g'=>chr($i))))).
unten Die Definition von „guessAction“ ist
, wobei der Parameter „g“ bei der Übermittlung durch die Rateseite übergeben wird. Wenn alle Wörter richtig erraten werden, wird „Sie gewinnen“. angezeigt werden, oder alle Zeiten, in denen Sie falsch geraten haben, werden angezeigt zurück zur Guess-Seite $this->render('guess');
Erstellen Sie ein Verzeichnisstrukturgerüst. Das unter „Erstellen der ersten Webanwendung“ erwähnte yiic-Tool kann diesen Schritt schnell umsetzen.
Konfigurieren Sie diese Anwendung. Dies wird durch Ändern der Anwendungskonfigurationsdatei erreicht. Dieser Schritt erfordert möglicherweise auch das Schreiben einiger Anwendungskomponenten (z. B. Benutzerkomponenten).
Erstellen Sie eine Modellklasse für jeden verwalteten Datentyp. Die unter „Erstellen der ersten Yii-Anwendung und automatische Codegenerierung“ beschriebenen Gii-Tools können verwendet werden, um schnell aktive Datensatzklassen für jede Datentabelle zu erstellen. 4. Erstellen Sie für jeden Benutzeranforderungstyp eine Controller-Klasse. Wie Benutzeranfragen klassifiziert werden, hängt von den tatsächlichen Bedürfnissen ab. Wenn Benutzer auf eine Modellklasse zugreifen müssen, sollte sie im Allgemeinen über eine entsprechende Controller-Klasse verfügen. Gii-Tools können diesen Schritt auch automatisieren.
Implementieren Sie Aktionen und die entsprechenden Ansichten. Das ist die eigentliche Arbeit, die getan werden muss.
Konfigurieren Sie die erforderlichen Aktionsfilter in der Controller-Klasse.
Wenn Sie Theme-Funktionalität benötigen, erstellen Sie ein Theme.
Wenn eine Internationalisierung (I18N) erforderlich ist, erstellen Sie Übersetzungsinformationen.
Wenden Sie geeignete Caching-Techniken auf zwischenspeicherbare Datenpunkte und Ansichtspunkte an.
Endgültige Anpassungen und Bereitstellung.
Das Obige ist der Inhalt des PHP-Entwicklungsframeworks Yii Framework-Tutorial (4) Beispiel für ein Hangman-Wortratespiel. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Mit der kontinuierlichen Weiterentwicklung der Cloud-Computing-Technologie ist die Datensicherung zu etwas geworden, das jedes Unternehmen durchführen muss. In diesem Zusammenhang ist es besonders wichtig, ein hochverfügbares Cloud-Backup-System zu entwickeln. Das PHP-Framework Yii ist ein leistungsstarkes Framework, das Entwicklern dabei helfen kann, schnell leistungsstarke Webanwendungen zu erstellen. Im Folgenden wird vorgestellt, wie Sie mit dem Yii-Framework ein hochverfügbares Cloud-Backup-System entwickeln. Entwerfen des Datenbankmodells Im Yii-Framework ist das Datenbankmodell ein sehr wichtiger Teil. Denn das Datensicherungssystem erfordert viele Tabellen und Beziehungen

Da die Nachfrage nach Webanwendungen weiter wächst, haben Entwickler bei der Auswahl von Entwicklungsframeworks immer mehr Möglichkeiten. Symfony und Yii2 sind zwei beliebte PHP-Frameworks. Sie verfügen beide über leistungsstarke Funktionen und Leistung. Welches Framework ist jedoch besser geeignet, wenn es darum geht, umfangreiche Webanwendungen zu entwickeln? Als nächstes führen wir eine vergleichende Analyse von Symphony und Yii2 durch, um Ihnen zu helfen, eine bessere Wahl zu treffen. Grundlegende Übersicht Symphony ist ein Open-Source-Webanwendungs-Framework, das in PHP geschrieben ist und darauf aufbaut

Das Yii-Framework ist ein Open-Source-PHP-Webanwendungsframework, das zahlreiche Tools und Komponenten zur Vereinfachung des Prozesses der Webanwendungsentwicklung bereitstellt, wobei die Datenabfrage eine der wichtigen Komponenten ist. Im Yii-Framework können wir eine SQL-ähnliche Syntax verwenden, um auf die Datenbank zuzugreifen und Daten effizient abzufragen und zu bearbeiten. Der Abfrage-Builder des Yii-Frameworks umfasst hauptsächlich die folgenden Typen: ActiveRecord-Abfrage, QueryBuilder-Abfrage, Befehlsabfrage und Original-SQL-Abfrage

Mit der Weiterentwicklung des Internets wird auch die Nachfrage nach der Entwicklung von Webanwendungen immer größer. Für Entwickler erfordert die Entwicklung von Anwendungen ein stabiles, effizientes und leistungsstarkes Framework, das die Entwicklungseffizienz verbessern kann. Yii ist ein führendes Hochleistungs-PHP-Framework, das umfangreiche Funktionen und gute Leistung bietet. Yii3 ist die nächste Generation des Yii-Frameworks, das die Leistung und Codequalität basierend auf Yii2 weiter optimiert. In diesem Artikel stellen wir vor, wie Sie das Yii3-Framework zum Entwickeln von PHP-Anwendungen verwenden.

Im aktuellen Informationszeitalter sind Big Data, künstliche Intelligenz, Cloud Computing und andere Technologien in den Fokus großer Unternehmen gerückt. Unter diesen Technologien hat die Grafikkarten-Rendering-Technologie als leistungsstarke Grafikverarbeitungstechnologie immer mehr Aufmerksamkeit erhalten. Die Grafikkarten-Rendering-Technologie wird häufig in der Spieleentwicklung, bei Film- und Fernsehspezialeffekten, im technischen Modellbau und in anderen Bereichen eingesetzt. Für Entwickler ist die Wahl eines Frameworks, das zu ihren Projekten passt, eine sehr wichtige Entscheidung. Unter den aktuellen Sprachen ist PHP eine sehr dynamische Sprache. Einige hervorragende PHP-Frameworks wie Yii2, Ph

Wenn Sie fragen: „Was ist Yii?“ schauen Sie sich mein vorheriges Tutorial an: Einführung in das Yii Framework, das die Vorteile von Yii bespricht und die Neuerungen in Yii 2.0 beschreibt, das im Oktober 2014 veröffentlicht wurde. Hmm> In dieser Serie „Programmieren mit Yii2“ werde ich die Leser in die Verwendung des Yii2PHP-Frameworks einführen. Im heutigen Tutorial werde ich Ihnen zeigen, wie Sie die Konsolenfunktionalität von Yii nutzen können, um Cron-Jobs auszuführen. In der Vergangenheit habe ich wget – eine über das Internet zugängliche URL – in einem Cron-Job verwendet, um meine Hintergrundaufgaben auszuführen. Dies wirft Sicherheitsbedenken auf und hat einige Leistungsprobleme zur Folge. Während ich in unserer Serie „Sicherheit für Startup“ einige Möglichkeiten zur Risikominimierung besprochen habe, hatte ich gehofft, auf konsolengesteuerte Befehle umsteigen zu können

Mit der rasanten Entwicklung des Internets sind APIs zu einer wichtigen Möglichkeit geworden, Daten zwischen verschiedenen Anwendungen auszutauschen. Daher wird es immer wichtiger, ein API-Framework zu entwickeln, das einfach zu warten, effizient und stabil ist. Bei der Auswahl eines API-Frameworks sind Yii2 und Symfony zwei beliebte Optionen unter Entwicklern. Welches ist also besser für die API-Entwicklung geeignet? In diesem Artikel werden diese beiden Frameworks verglichen und einige Schlussfolgerungen gezogen. 1. Grundlegende Einführung Yii2 und Symfony sind ausgereifte PHP-Frameworks mit entsprechenden Erweiterungen, die zur Entwicklung verwendet werden können

Yii-Framework: In diesem Artikel wird die Methode von Yii zum Konvertieren von Objekten in Arrays oder zur direkten Ausgabe in das JSON-Format vorgestellt. Sie hat einen bestimmten Referenzwert und ich hoffe, dass sie jedem helfen kann.
