Heim  >  Artikel  >  PHP-Framework  >  Der Unterschied zwischen thinkphp5 und thinkphp3

Der Unterschied zwischen thinkphp5 und thinkphp3

藏色散人
藏色散人Original
2019-06-29 10:56:434689Durchsuche

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn