Online-Prüfungstrainingssystem für die PHP-Entwicklung
PHP-Entwicklung Online-Prüfungstrainingssystem
Hinweis: In diesem Artikel werden Lern- und Entwicklungsideen und -verfahren aufgezeichnet Hat keinen kommerziellen Wert. Die kommerzielle Nutzung erfordert ein zweites Upgrade.
(Empfohlenes Lernen: PHP-Schulung)
Die Darstellung ist wie folgt:
Frage Anzeige der Bank-Homepage
Online-Test von Testfragen
Ergebnisstatistik
Der Zweck von In diesem kleinen Projekt werden die Grundlagen des PHP-Wissens geübt. Durch Array-Operationen werden die Testfrageninformationen gespeichert und geladen sowie Vorlagendateien eingeführt, um das Aufruflayout der Testfragendaten zu realisieren.
1. Da das kleine Projekt keine Datenbank verwendet, werden die Testfragen in Form von Arrays wie folgt gespeichert:
Hinweis: Der folgende Code ist ein sehr komplexes Chaos. . Sie können den Quellcode des Programms am Ende des Artikels herunterladen und ihn in diesem Blogbeitrag ansehen.
<?php // 考试题库二 return [ // 题库标题 'title' => 'PHP基础语法考试题(二)', // 答题时限(秒数) 'timeout' => 1200, // 题库 'data' => [ // 判断题 'binary' => [ 'name' => '判断题', // 题型名称 'score' => 24, // 题型分数 'data' => [ 1 => [ 'question' => '在".php"后缀的文件中,所有的PHP代码都只能写在"<?php ?>"标记内。', 'answer' => 'no' ], 2=> [ 'question' => '标量类型包括布尔型、整型、字符串型和数组型。', 'answer' => 'no' ], 3=> [ 'question' => 'var_dump是PHP中用于打印变量或表达式的类型与值等相关信息的函数。', 'answer' => 'yes' ] ] ], // 单选题 'single' => [ 'name' => '单选题', 'score' => 40 , 'data' => [ 1 => [ 'question' => '下列选项中,不区分大小写的标识符是( )。', 'option' => [ '函数名','常量名','变量名','属性名' ], 'answer' => 'A' ], 2=> [
2. Wie erhält man also die Testfragendaten? Importieren Sie einfach die Datei
$data=require "./data/1.php";
Beachten Sie, dass die obige Testfragendatei ein von return zurückgegebenes Array ist. Wenn wir die Datei importieren, weisen wir die Testfragen-Array-Daten direkt der Variablen $data zu , und bedienen Sie dann $ data, um die Fragenbankdaten anzuzeigen.
3. Variable Fragenbankdatei.
Alle Fragenbankdateien werden im Verzeichnis /data/ abgelegt. Jedes Testelement entspricht einer .php-Datei. Wenn Sie wissen möchten, wie viele Testdaten vorhanden sind. Es gibt PHP-Dateien, hier verwenden wir die Funktion glob() und der Code lautet wie folgt:
//统计题库目录下的“.php”文件个数,此处要求题库文件名必须是连续的数字$count = count(glob('./data/*.php'));
Die Funktion glob() gibt ein Array von Dateilisten zurück. Das Dump-Ausgabeergebnis der Ausführung von glob(. )-Funktion lautet wie folgt:
array(3) { [0]=> string(12) "./data/1.php" [1]=> string(12) "./data/2.php" [2]=> string(12) "./data/3.php"}
Da die Dateinamen zum Speichern von Daten alle fortlaufende Nummern sind, was es für uns einfacher macht, Testfrageninformationen durch Schleifen zu lesen.
4. Nutzung anonymer Funktionen.
Eine anonyme Funktion ist eine Funktion ohne Funktionsnamen, die auch als Abschlussfunktion bezeichnet wird. Sie wird häufig verwendet, um den Wert von Funktionsparametern zu zerstören. Bei temporär definierten Funktionen ist die Verwendung anonymer Funktionen nicht erforderlich Frage zu Funktionsbenennungskonflikten. Die hier verwendete anonyme Funktion dient ausschließlich Übungszwecken. Wir können den folgenden Code auch in eine funktionale Funktion kapseln:
$func = function ($data) use(&$func){ $result = []; foreach ($data as $k=>$v){ //如果是数组,则继续递归,如果是字符串,则转义 $result[$k] = is_array($v) ? $func($v) : (is_string($v) ? toHtml($v) : $v); } return $result;};
Verwenden Sie die anonyme Funktion, um die Sonderzeichen der Testfragedaten rekursiv zu maskieren.
5. Escape-HTML-Sonderzeichen.
Wenn HTML-Tags in den Testfragen vorkommen, werden sie vom Browser analysiert und können nicht so ausgegeben werden, wie sie sind. Daher ist es notwendig, die HTML-Tags, die möglicherweise in der Frage vorhanden sind, mit Zeichen zu maskieren Der Code lautet wie folgt:
//HTML特殊字符转义function toHtml($str){ $str=htmlspecialchars($str,ENT_QUOTES); return str_replace(' ',' ',$str);}
Hier verwenden wir die Funktion htmlspecialchars(), um mögliche Sonderzeichen zu maskieren, damit wir sie bei der Ausgabe in dem von uns gewünschten Format ausgeben können.
Die entsprechende htmlspecialchars()-Funktion kann Leerzeichen und Zeilenumbrüche nicht maskieren, Sie müssen die Funktion str_replace() verwenden, um sie direkt zu ersetzen. Für Zeilenumbrüche können Sie die Funktion nl2br verwenden.
6. return gibt zwei Wertformen zurück.
Der spezifische Code lautet wie folgt:
function getDataInfo($data){ $count = []; //保存某种题型的题目数量 $score = []; //每道题的分值 foreach ($data as $k=>$v) { $count[$k]=count($v['data']); $score[$k]=round($v['score']/$count[$k]); } return [$count,$score]; //使用list()接收返回值:list($count,$score);顺序依次对应}
Der Code verwendet schließlich return, um zwei Ergebnisvariablen zurückzugeben. Um diese beiden Rückgabewerte zu erhalten, müssen Sie list( verwenden. ), um eine Array-Zuweisung zu erhalten, weist Elemente im Array nacheinander Variablen zu.
7. Kapseln Sie die zu verwendenden Funktionen in funktionale Funktionen, um den Aufruf zu vereinfachen und Codeduplizierungen zu vermeiden.
Hier werden alle verwendeten Funktionen so weit wie möglich in Funktionen gekapselt. Führen Sie bei Verwendung einfach die Funktionsdatei ein, um die Verwaltung zu erleichtern und die Codenutzung zu verbessern.
8. Verwenden Sie Vorlagen
Nachdem Sie PHP zum Verarbeiten der Daten verwendet haben, verwenden Sie
//引入HTML模板require './view/index.html';
, um die HTML-Vorlage in die PHP-Datei einzuführen Vorlage, Wir können auch PHP-Tags einfügen, um die gewünschten Daten auszugeben und die Daten dynamisch anzuzeigen.
在线考试系统请选择题库$v): ?> 时间:分钟 总分:分开始考试
Eine Variable direkt ausgeben: =$value?>
Schleife zur Ausgabe einer Reihe von Variablen: $ v) : ?>~~~~~~
9. :?
当做一些简单的判断输出时,使用三元运算符: ?可以大大的提升效率,简化代码。
<!-- 答题情况 --><td><?=$v ? '对' : '错'?></td><!-- 得分 --><td><?=$v ? $score[$type] : 0?></td>
上述代码中,$v是一个bool值,通过三元运算符我们可以省略一大堆if判断,使代码看上去更加整洁。
10、页面中的计时倒计时、关闭页面提示、未做考题提交提示、考试时间结束自动交卷功能是通过jQuery、javascript来实现的,这里不作说明。
程序源码下载地址:
http://www.seoalphas.com/data/upload/ueditor/20170629/595494a1f01ea.rar
注:php中文网提供大量免费、原创、高清的php视频教程,并且会定期举行php公益培训!
Das obige ist der detaillierte Inhalt vonOnline-Prüfungstrainingssystem für die PHP-Entwicklung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

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



Bei der Webentwicklung müssen wir häufig Caching-Technologie verwenden, um die Leistung und Reaktionsgeschwindigkeit der Website zu verbessern. Memcache ist eine beliebte Caching-Technologie, die jeden Datentyp zwischenspeichern kann und hohe Parallelität und hohe Verfügbarkeit unterstützt. In diesem Artikel wird die Verwendung von Memcache in der PHP-Entwicklung vorgestellt und spezifische Codebeispiele bereitgestellt. 1. Memcache installieren Um Memcache verwenden zu können, müssen wir zunächst die Memcache-Erweiterung auf dem Server installieren. Im CentOS-Betriebssystem können Sie den folgenden Befehl verwenden

Wie implementiert man mit C++ ein einfaches Online-Prüfungssystem? Mit der rasanten Entwicklung der Netzwerktechnologie und der Informatik haben Online-Bildung und Fernunterricht immer mehr Aufmerksamkeit auf sich gezogen. Online-Prüfungssysteme sind für Bildungseinrichtungen und Unternehmen zu einem wichtigen Instrument zur Beurteilung der Fähigkeiten von Studierenden und Mitarbeitern geworden. In diesem Artikel wird erläutert, wie Sie mit der Programmiersprache C++ ein einfaches Online-Prüfungssystem implementieren. Zunächst müssen wir einige grundlegende Konzepte und Datenstrukturen definieren. Das Online-Prüfungssystem umfasst hauptsächlich drei Haupteinheiten: Testfragen, Kandidaten und Prüfungen. Wir können C++ verwenden

So verwenden Sie Laravel zur Entwicklung eines Online-Prüfungssystems Einführung: Mit der rasanten Entwicklung des Internets werden Online-Prüfungssysteme zunehmend von Schulen, Unternehmen, Institutionen und Ausbildungseinrichtungen bevorzugt. Das Online-Prüfungssystem erleichtert nicht nur den Prüflingen, sondern verbessert auch die Prüfungseffizienz und kann den Verbrauch von Papiermaterialien während des Prüfungsprozesses reduzieren. In diesem Artikel wird erläutert, wie Sie mit dem Laravel-Framework ein einfaches und praktisches Online-Prüfungssystem entwickeln. 1. Anforderungen an die Projektvorbereitungsumgebung: PHP>=7.2, Composer, MySQL

Die Anwendung des soliden Prinzips in der PHP -Entwicklung umfasst: 1. Prinzip der Einzelverantwortung (SRP): Jede Klasse ist nur für eine Funktion verantwortlich. 2. Open and Close Principle (OCP): Änderungen werden eher durch Erweiterung als durch Modifikation erreicht. 3.. Lischs Substitutionsprinzip (LSP): Unterklassen können Basisklassen ersetzen, ohne die Programmgenauigkeit zu beeinträchtigen. 4. Schnittstellen-Isolationsprinzip (ISP): Verwenden Sie feinkörnige Schnittstellen, um Abhängigkeiten und nicht verwendete Methoden zu vermeiden. 5. Abhängigkeitsinversionsprinzip (DIP): Hoch- und niedrige Module beruhen auf der Abstraktion und werden durch Abhängigkeitsinjektion implementiert.

So verwenden Sie PHP zur Entwicklung einer Online-Nachhilfedienstplattform Mit der rasanten Entwicklung des Internets haben Online-Nachhilfedienstplattformen immer mehr Aufmerksamkeit und Nachfrage auf sich gezogen. Eltern und Schüler können über eine solche Plattform leicht geeignete Nachhilfelehrer finden, außerdem können Nachhilfelehrer ihre pädagogischen Fähigkeiten und Vorteile besser unter Beweis stellen. In diesem Artikel wird erläutert, wie Sie mit PHP eine Plattform für Online-Nachhilfedienste entwickeln. Zunächst müssen wir die funktionalen Anforderungen der Plattform klären. Eine Online-Nachhilfeplattform muss über die folgenden Grundfunktionen verfügen: Registrierungs- und Login-System: Benutzer können

Wie implementiert man Versionskontrolle und Code-Zusammenarbeit in der PHP-Entwicklung? Mit der rasanten Entwicklung der Internet- und Softwareindustrie sind Versionskontrolle und Code-Zusammenarbeit in der Softwareentwicklung immer wichtiger geworden. Unabhängig davon, ob Sie ein unabhängiger Entwickler oder ein Entwicklungsteam sind, benötigen Sie ein effektives Versionskontrollsystem, um Codeänderungen zu verwalten und zusammenzuarbeiten. Bei der PHP-Entwicklung stehen mehrere häufig verwendete Versionskontrollsysteme zur Auswahl, beispielsweise Git und SVN. In diesem Artikel wird erläutert, wie Sie diese Tools zur Versionskontrolle und Code-Zusammenarbeit in der PHP-Entwicklung verwenden. Der erste Schritt besteht darin, das für Sie passende auszuwählen

Wie entwickle ich mit PHP die Coupon-Funktion des Bestellsystems? Mit der rasanten Entwicklung der modernen Gesellschaft wird das Lebenstempo der Menschen immer schneller und immer mehr Menschen entscheiden sich dafür, auswärts zu essen. Das Aufkommen des Bestellsystems hat die Effizienz und den Komfort der Kundenbestellung erheblich verbessert. Als Marketinginstrument zur Kundengewinnung ist die Coupon-Funktion auch in verschiedenen Bestellsystemen weit verbreitet. Wie kann man also PHP verwenden, um die Coupon-Funktion des Bestellsystems zu entwickeln? 1. Datenbankdesign Zunächst müssen wir eine Datenbank zum Speichern von Gutscheindaten entwerfen. Es wird empfohlen, zwei Tabellen zu erstellen: eine

Wie entwickle ich mit PHP die Mitgliederpunktefunktion des Lebensmitteleinkaufssystems? Mit dem Aufstieg des E-Commerce entscheiden sich immer mehr Menschen dafür, Dinge des täglichen Bedarfs online einzukaufen, darunter auch den Lebensmitteleinkauf. Das Lebensmitteleinkaufssystem ist für viele Menschen zur ersten Wahl geworden, und eines seiner wichtigen Merkmale ist das Mitgliedspunktesystem. Das Mitgliedschaftspunktesystem kann Nutzer anlocken und ihre Loyalität erhöhen und ihnen gleichzeitig ein zusätzliches Einkaufserlebnis bieten. In diesem Artikel besprechen wir, wie man mit PHP die Mitgliedschaftspunktefunktion des Lebensmitteleinkaufssystems entwickelt. Zuerst müssen wir eine Mitgliedertabelle erstellen, um Benutzer zu speichern