Heim > Artikel > PHP-Framework > Der Unterschied zwischen thinkphp5 und thinkphp3
Der Unterschied zwischen thinkphp5 und thinkphp3
Der Beamte sagte: Verwenden Sie nicht das 3er-Denken, um 5 zu verwenden. Sagen wir es so: Es handelt sich um zwei offizielle Produkte, die nichts mit Versionsiterationen zu tun haben. Die Verzeichnisstruktur ist unterschiedlich und einige Funktionsnamen sind unterschiedlich. Wenn es sich um eine herkömmliche MVC-Website handelt, verwenden Sie tp3.2. Wenn Sie eine Schnittstelle erstellen, verwenden Sie tp5. Der Hauptunterschied zwischen Vorher und Nachher sollte in der Verarbeitung der Ansichten liegen.
Modellinstanziierung
TP5 bricht die M-Methode zur automatischen Instanziierung des Modells ab und verwendet stattdessen die neue Instanziierungsmodellmethode. Ohne automatische Instanziierung müssen Sie selbst eine neue Modellklasse erstellen und diese selbst instanziieren. Dies ähnelt in gewisser Weise der D-Methode. Es gibt eine Modellmethode, die eine ähnliche Funktion wie die D-Methode hat. Sie kann vollständig durch die
U-Methode ersetzt werden. Um Routen in der TP-Methode zu generieren, kann diese Methode jetzt vollständig durch die URL-Methode ersetzt werden
IS_GET- und IS_POST-Methoden wurden in TP5 abgebrochen
Wenn Sie Wenn Sie es weiterhin verwenden möchten, können Sie es im Projekt wie folgt anpassen:
define('IS_GET',Request::instance()->isGet()); define('IS_POST', Request::instance()->isPost());
Original-TPs I-Methode
Das vorherige TP hatte eine I-Methode zum Empfangen von Anfragen Derzeit kann stattdessen die Eingabemethode verwendet werden
Es ist zu beachten, dass die neue Methode
Die aktuelle einzelne neue Methode wurde in die Speichermethode geändert. Dies ist die vorherige Aktualisierungsmethode. Es ist zu beachten, dass die Aktualisierungsmethode ebenfalls unterschiedlich ist. Für neue Ergänzungen können Sie save direkt verwenden, und für Updates müssen Sie isUpdate(true) hinzufügen.
model("")->isUpdate(true)->save($data);Der größte funktionale Unterschied zwischen TP5 und der Originalversion von TP ist die Rückgabe fast aller Datenbankabfragen gibt Objekte zurück
$menuurl->find($menu_id);//此方法返回一个对象,可以使用->toArray()方法转换为数组 $this->where($condition)->order($order)->select();//此方法返回一个对象数组,所以要使用数据也必须转换,当然可以直接用对象
Die C-Methode wird durch die Konfigurationsmethode ersetzt
Die Datenbankkonfiguration befindet sich allein in der Datenbank.php. Wenn Sie Parameter abrufen möchten, verwenden Sie
config('database.prefix')Es gibt derzeit benutzerdefinierte Konstanten auf der Seite Methode, die Konfigurationsmethode ähnelt der vorherigen Version Wenn Sie sie global ersetzen müssen, können Sie sie direkt in der Konfiguration hinzufügen Datei:
'view_replace_str' => [ '__PUBLIC__'=>'/public/', '__ROOT__' => '/', ]oder direkt konstante Konfiguration verwenden
{$Think.config.PUBLIC}Default Das Engine-Tag kann geändert werden, d. h. das bisherige a8093152e673feb7aba1828c43532094 kann weiterhin verwendet werden
// 模板引擎普通标签开始标记 'tpl_begin' => '{', // 模板引擎普通标签结束标记 'tpl_end' => '}', // 标签库标签开始标记 'taglib_begin' => '{', // 标签库标签结束标记 'taglib_end' => '}',Dieser Artikel stammt aus der technischen Artikelspalte zum ThinkPHP-Framework:
http://www.php.cn/phpkj/thinkphp/
Das obige ist der detaillierte Inhalt vonDer Unterschied zwischen thinkphp5 und thinkphp3. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!