Maison  >  Article  >  développement back-end  >  Énumérez quelques similitudes et différences entre ThinkPHP5 et ThinkPHP3

Énumérez quelques similitudes et différences entre ThinkPHP5 et ThinkPHP3

jacklove
jackloveoriginal
2018-06-15 10:48:052644parcourir

Le responsable a dit : n’utilisez pas 3 en pensant à utiliser 5. Disons-le ainsi, ce sont deux produits officiels, sans rapport avec les itérations de versions. La structure des répertoires est différente et certains noms de fonctions sont différents. S'il s'agit d'un site Web mvc traditionnel, utilisez tp3.2. Si vous créez une interface, utilisez tp5. La principale différence entre avant et après devrait être le traitement de view.

Instanciation du modèle

TP5 annule la méthode M d'instanciation automatique du modèle et utilise à la place une nouvelle méthode de modèle instancié. Sans instanciation automatique, vous devez créer vous-même une nouvelle classe de modèle et l'instancier vous-même. Ceci est quelque peu similaire à la méthode D. Il existe une méthode modèle qui a une fonction similaire à la méthode D. Elle peut être complètement remplacée fonctionnellement en utilisant la

Méthode U

. La méthode U est TP La méthode intégrée pour générer des itinéraires dans , Cette méthode peut maintenant être complètement remplacée par la méthode url

IS_GET Et IS_POST Les méthodes ont été annulées dans TP5

Si vous souhaitez continuer à l'utiliser, vous pouvez le personnaliser dans le projet, comme suit :

 define('IS_GET',Request::instance()->isGet()); define('IS_POST',       Request::instance()->isPost());

La méthode I des TP originaux

Le TP précédent a La méthode individuelle I est utilisée pour recevoir les paramètres de la demande. Actuellement, la méthode de saisie peut être utilisée à la place de

. Il convient de noter que la nouvelle méthode

est désormais une nouvelle méthode unique. La méthode d'ajout a été remplacée par la méthode de sauvegarde. Il s'agit de la méthode de mise à jour précédente, et il convient de noter que la méthode d'ajout est désormais la méthode de sauvegarde. les méthodes de mise à jour sont également différentes. Vous pouvez utiliser save directement pour ajouter de nouveaux éléments, et pour mettre à jour, vous devez ajouter isUpdate(true)

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方法的应用讲解

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn