Yii est un framework de développement d'applications Web PHP5 hautes performances. Un simple outil de ligne de commande yiic peut créer rapidement un cadre de code d'application Web. Les développeurs peuvent ajouter une logique métier basée sur le cadre de code généré pour terminer rapidement le développement d'applications.
Le framework de la version Yii2.0 est complètement réécrit, et il existe de nombreuses différences entre les versions 1.1 et 2.0. [Apprentissage recommandé : Tutoriel de démarrage Yii]
Alors, quelles sont les différences entre yii1 et yii2 ?
Yii 2.0 nécessite PHP 5.4 ou supérieur, ce qui représente une énorme amélioration par rapport au PHP 5.2 requis par Yii 1.1.
1. L'instance d'application utilise directement des variables nommées globales pour accéder à : $app sans appeler app().
2. Un changement important dans la couche de vue de Yii2 est l'introduction de classes de vue, ce qui rend la mise en œuvre du modèle MVC plus complète. En conséquence, les classes subsidiaires pertinentes de la couche de présentation sont gérées par la nouvelle classe de vue. Par exemple, theme : Yii::app()->theme->baseUrl doit être mis à jour vers Yii::$app->view->. ; thème->baseUrl, ou $this->theme->baseUrl.
3. Yii2 introduit le concept de package de ressources, et la manière de référencer les ressources a considérablement changé.
Il existe deux façons d'introduire des ressources, l'une via la classe AppAsset dans le répertoire des ressources et l'autre via une méthode d'enregistrement similaire à Yii1.
La méthode Yii::app()->getClientScript() n'est plus disponible. Par exemple, si vous souhaitez enregistrer dynamiquement un fichier de script JS dans la page, les modifications sont les suivantes :
Yii::app() ->getClientScript()->registerScriptFile('...') est modifié en Yii::$app->view->registerJsFile('...'),
ou $this- >registerJsFile('...').
4. Utilisez la base de données
Par exemple, interrogez un enregistrement avec user_id
yii1:
User::model()->find( ' user_id=:user_id',[':user_id'=>$user_id]);
yii2:
User::find()->where('user_id=:user_id ' ,[':user_id'=>$user_id])->one();
Interroger plusieurs enregistrements :
yii1:
User::model( )->findAll('status=:status',[':staus'=>$status]);
yii2:
User::find()->where ('status=:status',[':staus'=>$status])->all();
De plus, yii2 fournit également la méthode asArray() et le résultat direct de la requête est un tableau :
User::find()->where('status=:status',[':staus'=>$status])->asArray()->all ();
Si vous êtes débutant, il est recommandé d'apprendre directement yii2.
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!