


Framework de développement PHP Tutoriel Yii Framework (3) Ajouter des journaux à l'application
Dans le processus de développement d'applications, le débogage est également une étape très importante en plus du débogage en temps réel pris en charge par l'IDE (comme VS.PHP ou la fonction de débogage prise en charge par l'IDE), en ajoutant des informations de débogage appropriées au Web. applications est également très utile, toute personne ayant développé des applications Java ou .Net est familiarisée avec log4XX. Yii Framework fournit également une fonction de journal similaire, Yii::log, qui apparaît comme un composant intégré de CWebApplication. Il peut être configuré via un fichier de configuration (la configuration dans Yii est généralement protected/config/main.php).
L'article précédent Tutoriel concis de développement du framework Yii (2) Bases de l'application Web Yii décrit brièvement les composants de l'application.
En plus du composant Log, Yii prédéfinit une série de composants d'application de base pour fournir des fonctions utilisées dans les applications Web courantes. Par exemple, le composant de requête est utilisé pour analyser les demandes des utilisateurs et fournir des informations telles que l'URL, les cookies, etc. En configurant les propriétés de ces composants principaux, nous pouvons modifier le comportement par défaut de Yii dans presque tous les aspects.
Ci-dessous, nous répertorions les composants de base prédéfinis par CWebApplication.
assetManager : CAssetManager - gère la publication des fichiers d'actifs privés.
authManager : CAuthManager - Gère le contrôle d'accès basé sur les rôles (RBAC).
cache : CCache - Fournit une fonction de mise en cache des données. Notez que vous devez spécifier la classe réelle (par exemple CMemCache, CDbCache). Sinon, NULL sera renvoyé lorsque vous accéderez à ce composant.
clientScript : CClientScript - gère les scripts clients (javascripts et CSS).
coreMessages : CPhpMessageSource - fournit la traduction des messages principaux utilisés par le framework Yii.
db : CDbConnection - Fournit une connexion à la base de données. Notez que pour utiliser ce composant, vous devez configurer sa propriété connectionString.
errorHandler : CErrorHandler - Gère les erreurs et exceptions PHP non détectées.
format : CFormatter - affichage numérique formaté. Cette fonctionnalité est disponible à partir de la version 1.1.0.
messages : CPhpMessageSource - Fournit des traductions de messages utilisées dans les applications Yii.
requête : CHttpRequest - Fournit des informations sur la demande de l'utilisateur.
securityManager : CSecurityManager - Fournit des services liés à la sécurité tels que le hachage et le cryptage.
session : CHttpSession - Fournit des fonctions liées à la session.
statePersister : CStatePersister - Fournit des méthodes de persistance d'état globales.
urlManager : CUrlManager - Fournit des fonctions liées à l'analyse et à la création d'URL.
user : CWebUser - Fournit des informations d'identification de l'utilisateur actuel.
themeManager : CThemeManager - gère les thèmes. Ces composants seront introduits étape par étape dans les didacticiels suivants. La méthode de base d'utilisation de la fonction Log est donnée ci-dessous : Ici, nous modifions le didacticiel concis de développement du framework Yii (1) La première application est Hello World. Ajoutez-y un journal. 1. Créez le fichier de configuration protected/config/main.php Si vous souhaitez écrire le journal dans un fichier, vous pouvez utiliser la configuration suivante :
// This is the main Web application configuration. Any writable// CWebApplication properties can be configured here.return array( // preloading 'log' component'preload'=>array('log'), // application components'components'=>array( 'log'=>array('class'=>'CLogRouter','routes'=>array(array('class'=>'CFileLogRoute','levels'=>'info,error, warning',), ),),), );
Le routage des informations CLogRouter est enregistré via Yii : log ou Yii::trace Les informations sont conservées en mémoire. Nous devons généralement les afficher dans une fenêtre de navigateur ou les enregistrer dans un stockage persistant tel que des fichiers ou des e-mails. C'est ce qu'on appelle le routage de l'information.
Généralement, lorsque vous utilisez la fonction Log, vous devez précharger le composant Log, qui est configuré via le préchargement et permet à l'application de charger certains modules à l'avance. Astuce : par défaut, les composants de l'application sont créés selon les besoins. Cela signifie qu'un composant ne sera créé que s'il est accédé. Par conséquent, les performances globales du système ne seront pas dégradées en raison de la configuration de nombreux composants. Certains composants applicatifs (tels que CLogRouter) sont créés qu'ils soient utilisés ou non. Dans ce cas, nous listons les ID de ces composants dans le fichier de configuration de l'application : preload.
2. Modifiez le script d'entrée index.php et configurez l'instance d'application principale pour utiliser le fichier de configuration nouvellement créé.
$yii='C:/yiiframework/yii.php'; // remove the following line when in production mode defined('YII_DEBUG') or define('YII_DEBUG',true); $config=dirname(__FILE__).'/protected/config/main.php'; require_once($yii); Yii::createWebApplication($config)->run();3. 创建protected/runtime
Étant donné que le répertoire par défaut dans lequel les fichiers journaux sont écrits est protégé/runtime, le répertoire d'exécution doit être créé à l'avance, sinon Yii affichera le journal directement sur la page Web.
4. De cette façon, vous pouvez utiliser Yii::log ou Yii::trace pour ajouter des journaux à l'application.
La différence est que cette dernière n'enregistre les informations que lorsque l'application s'exécute en mode débogage.
Yii::log($message, $level, $category); Yii::trace($message, $category);
Lors de l'enregistrement des informations, nous devons spécifier sa catégorie et son niveau. La catégorie est une chaîne avec un format similaire à un alias de chemin. Par exemple, si un message est enregistré dans CController, nous pouvons utiliser system.web.CController comme classification. Le niveau d'information doit être l'une des valeurs suivantes :
trace : Il s'agit du niveau utilisé dans Yii::trace. Il est utilisé pour suivre le flux d’exécution d’un programme pendant le développement.
info : Ceci est utilisé pour enregistrer des informations communes.
profil : Ceci est un aperçu des performances (profil). Des instructions plus détaillées suivront sous peu.
avertissement : ceci est utilisé pour les informations d'avertissement.
erreur : ceci est utilisé pour les messages d'erreur fatales.
Les journaux de Yii sont classés et filtrés par niveau et catégorie Comme nous l'avons mentionné, plusieurs niveaux ou catégories doivent être connectés à l'aide de virgules.
由于 信息分类是类似 xxx.yyy.zzz 格式的,我们可以将其视为一个分类层级。 具体地,我们说 xxx 是 xxx.yyy 的父级,而 xxx.yyy 又是 xxx.yyy.zzz 的父级。 这样我们就可以使用 xxx.* 表示分类 xxx 及其所有的子级和孙级分类。
有了以 上知识,我们修改SiteController的actionIndex,添加一行日志。
public function actionIndex() { Yii::log("action","info","site.action"); $this->render("index"); }
5. 运行应用,可以看到Yii在protected/runtime 创建了一个application.log
其内容如下:
2012/12/11 21:23:38 [info] [site.action] action
注: 日志存放的位置和文件名都可以通过配置来修改,一般情 况使用缺省值就可以了,和log4X 类似,应用的日志可以通过路由同时写到多个目的地(文件,Email等)这些多可以通过配置 来实现,具体可以参见日志记录。
以上就是PHP开发框架Yii Framework教程(3) 为应用添加日志的内容,更多相关内容请关注PHP中文网(www.php.cn)!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

.NET Framework 4 est requis par les développeurs et les utilisateurs finaux pour exécuter les dernières versions des applications sous Windows. Cependant, lors du téléchargement et de l'installation de .NET Framework 4, de nombreux utilisateurs se sont plaints de l'arrêt du programme d'installation à mi-chemin, affichant le message d'erreur suivant : « .NET Framework 4 n'a pas été installé car le téléchargement a échoué avec le code d'erreur 0x800c0006 ». Si vous le rencontrez également lors de l'installation de .NETFramework4 sur votre appareil, vous êtes au bon endroit

Chaque fois que votre PC Windows 11 ou Windows 10 rencontre un problème de mise à niveau ou de mise à jour, vous verrez généralement un code d'erreur indiquant la raison réelle de l'échec. Cependant, une confusion peut parfois survenir lorsqu'une mise à niveau ou une mise à jour échoue sans qu'un code d'erreur ne s'affiche. Grâce à des codes d'erreur pratiques, vous savez exactement où se situe le problème afin que vous puissiez essayer de le résoudre. Mais comme aucun code d’erreur n’apparaît, il devient difficile d’identifier le problème et de le résoudre. Cela prendra beaucoup de temps pour simplement découvrir la raison de l'erreur. Dans ce cas, vous pouvez essayer d'utiliser un outil dédié appelé SetupDiag fourni par Microsoft qui vous aide à identifier facilement la véritable raison de l'erreur.
![SCNotification a cessé de fonctionner [5 étapes pour y remédier]](https://img.php.cn/upload/article/000/887/227/168433050522031.png?x-oss-process=image/resize,m_fill,h_207,w_330)
En tant qu'utilisateur Windows, vous rencontrerez probablement une erreur SCNotification a cessé de fonctionner à chaque démarrage de votre ordinateur. SCNotification.exe est un fichier de notification système Microsoft qui plante à chaque démarrage de votre PC en raison d'erreurs d'autorisation et de pannes de réseau. Cette erreur est également connue sous son nom d’événement problématique. Vous ne verrez donc peut-être pas cela comme un arrêt de SCNotification, mais comme un bug clr20r3. Dans cet article, nous explorerons toutes les étapes à suivre pour réparer SCNotification a cessé de fonctionner afin qu'il ne vous dérange plus. Qu'est-ce que SCNotification.e

Les utilisateurs de Microsoft Windows qui ont installé Microsoft.NET version 4.5.2, 4.6 ou 4.6.1 doivent installer une version plus récente de Microsoft Framework s'ils souhaitent que Microsoft prenne en charge le framework via de futures mises à jour de produit. Selon Microsoft, les trois frameworks cesseront de prendre en charge le 26 avril 2022. Une fois la date de support terminée, le produit ne recevra plus de « correctifs de sécurité ni de support technique ». La plupart des appareils domestiques sont tenus à jour grâce aux mises à jour Windows. Ces appareils disposent déjà de versions plus récentes de frameworks, telles que .NET Framework 4.8. Les appareils qui ne se mettent pas à jour automatiquement peuvent

Cela fait une semaine que nous parlions du nouveau bug du mode sans échec affectant les utilisateurs ayant installé KB5012643 pour Windows 11. Ce problème embêtant n'apparaissait pas sur la liste des problèmes connus publiée par Microsoft le jour du lancement, prenant ainsi tout le monde par surprise. Eh bien, juste au moment où vous pensiez que les choses ne pourraient pas empirer, Microsoft lâche une autre bombe pour les utilisateurs qui ont installé cette mise à jour cumulative. Windows 11 Build 22000.652 pose davantage de problèmes. La société de technologie avertit donc les utilisateurs de Windows 11 qu'ils pourraient rencontrer des problèmes lors du lancement et de l'utilisation de certaines applications .NET Framework 3.5. Cela vous semble familier ? Mais s'il te plaît, ne sois pas surpris

Avec le développement continu de la technologie du cloud computing, la sauvegarde des données est devenue quelque chose que chaque entreprise doit faire. Dans ce contexte, il est particulièrement important de développer un système de sauvegarde cloud hautement disponible. Le framework PHP Yii est un framework puissant qui peut aider les développeurs à créer rapidement des applications Web hautes performances. Ce qui suit explique comment utiliser le framework Yii pour développer un système de sauvegarde cloud hautement disponible. Conception du modèle de base de données Dans le framework Yii, le modèle de base de données est une partie très importante. Parce que le système de sauvegarde des données nécessite beaucoup de tables et de relations

Alors que la demande d'applications Web continue de croître, les développeurs ont de plus en plus de choix dans le choix des frameworks de développement. Symfony et Yii2 sont deux frameworks PHP populaires. Ils ont tous deux des fonctions et des performances puissantes, mais face à la nécessité de développer des applications Web à grande échelle, quel framework est le plus adapté ? Nous procéderons ensuite à une analyse comparative de Symphony et Yii2 pour vous aider à faire un meilleur choix. Présentation de base Symphony est un framework d'application Web open source écrit en PHP et basé sur

Le framework Yii est un framework d'application Web PHP open source qui fournit de nombreux outils et composants pour simplifier le processus de développement d'applications Web, dont la requête de données est l'un des composants importants. Dans le framework Yii, nous pouvons utiliser une syntaxe de type SQL pour accéder à la base de données afin d'interroger et de manipuler les données efficacement. Le générateur de requêtes du framework Yii comprend principalement les types suivants : requête ActiveRecord, requête QueryBuilder, requête de commande et requête SQL originale.
