Heim  >  Artikel  >  Backend-Entwicklung  >  Listen Sie einige Gemeinsamkeiten und Unterschiede zwischen ThinkPHP5 und ThinkPHP3 auf

Listen Sie einige Gemeinsamkeiten und Unterschiede zwischen ThinkPHP5 und ThinkPHP3 auf

jacklove
jackloveOriginal
2018-06-15 10:48:052644Durchsuche

Der Beamte sagte: Verwenden Sie nicht 3 und denken Sie, 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 anders 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 von view liegen.

Modellinstanziierung

TP5 bricht die M-Methode zur automatischen Instanziierung des Modells ab und verwendet stattdessen eine neue instanziierte Modellmethode. Ohne automatische Instanziierung müssen Sie selbst eine neue Modellklasse erstellen und diese selbst instanziieren. Dies ähnelt in gewisser Weise der D-Methode. Hier gibt es eine Modellmethode, die eine ähnliche Funktion wie die D-Methode hat. Sie kann funktional vollständig durch die Verwendung der

U-Methode

Die U-Methode ist TP. Die integrierte Methode zum Generieren von Routen in . Jetzt kann diese Methode vollständig durch die URL-Methode ersetzt werden

Die Methoden IS_GET und IS_POST wurden in TP5 abgeschafft

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());

Die ursprüngliche TP's I-Methode

Das vorherige TP hatte ein I. Die Methode wird zum Empfangen von Anforderungsparametern verwendet. Derzeit kann die Eingabemethode anstelle von

verwendet werden Beachten Sie, dass die neue Methode

jetzt eine einzelne neue Methode ist. In „Speichermethode“ geändert. Dies ist die vorherige Aktualisierungsmethode. Es ist zu beachten, dass die Aktualisierungsmethode ebenfalls unterschiedlich ist. Sie können Speichern direkt verwenden, um neue Elemente hinzuzufügen. Zum Aktualisieren müssen Sie isUpdate(true) hinzufügen

model("")->isUpdate(true)->save($data);

TP5和原来版本TP差距最大的功能性的地方在返回,现在几乎所有的数据库查询都会返回对象

$menuurl->find($menu_id);//此方法返回一个对象,可以使用->toArray()方法转换为数组$this->where($condition)->order($order)->select();//此方法返回一个对象数组,所以要使用数据也必须转换,当然可以直接用对象

C方法被config方法替换

数据库配置单独在database.php中,想获取参数使用

config('database.prefix')

页面中目前有自定义常量的方法,使用配置的方法类似之前版本

<p style="text-indent: 0em; line-height: normal;"><span style="font-size: 16px;">如果需要全局替换的话,可以直接在配置文件中添加:'view_replace_str'  =>  [    '__PUBLIC__'=>'/public/',    '__ROOT__' => '/',<br>]<br>或者直接使用常量配置<br>{$Think.config.PUBLIC}</span></p>

默认的引擎标签可修改,也就是之前的a8093152e673feb7aba1828c43532094这种可以继续用

      // 模板引擎普通标签开始标记
       &#39;tpl_begin&#39;    => &#39;{&#39;,        // 模板引擎普通标签结束标记
       &#39;tpl_end&#39;      => &#39;}&#39;,        // 标签库标签开始标记
       &#39;taglib_begin&#39; => &#39;{&#39;,        // 标签库标签结束标记
       &#39;taglib_end&#39;   => &#39;}&#39;,

本文讲解了ThinkPHP5与ThinkPHP3的一些异同点,更多相关内容请关注php中文网。

相关推荐:

创建一个最简单的ThinkPhp项目工程

关于ThinkPHP的增、删、改、查 的一些总结

where方法的应用讲解

Das obige ist der detaillierte Inhalt vonListen Sie einige Gemeinsamkeiten und Unterschiede zwischen ThinkPHP5 und ThinkPHP3 auf. 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