Guide de mise à niveau vers 1.4
Effectuez une sauvegarde avant de procéder à la mise à niveau, exécutez la commande suivante pour mettre à niveau
composer require workerman/webman-framework ^1.4.7 && composer require webman/console ^1.2.12 && php webman install
Remarque
Si la mise à niveau échoue, il est probable que ce soit dû à l'utilisation d'un proxy composer. Utilisez la commande suivantecomposer config -g --unset repos.packagist
pour restaurer l'utilisation de la source de données officielle de composer.
Fonctionnalités et changements
Plugins d'application
La version 1.4 prend en charge les plugins d'application. Pour plus d'informations, veuillez consulter le plugin d'application
Routage automatique
La version 1.4 prend en charge diverses règles complexes de répertoires de contrôleurs, par exemple
app
├── admin
│ └── v1
│ └── v2
│ └── v3
│ └── controller
│ └── Index.php
└── controller
├── v1
│ └── Index.php
└── v2
└── v3
└── Index.php
En d'autres termes, le plugin webman/auto-route
n'est plus nécessaire.
Commutateur de réutilisation des contrôleurs
La version 1.4 permet de désactiver la réutilisation des contrôleurs. Dans config/app.php
, configurez 'controller_reuse' => false,
afin que chaque requête initialise un nouveau contrôleur, c'est-à-dire que chaque requête déclenchera le constructeur __construct()
du contrôleur correspondant. Les développeurs peuvent effectuer une initialisation avant le traitement de chaque requête dans le constructeur.
Étant donné qu'il est possible de désactiver la réutilisation des contrôleurs, le plugin webman/action-hook
n'est plus nécessaire.
Démarrage du service HTTP
La version 1.4 prend en charge l'ouverture de plusieurs ports pour fournir des services HTTP.
Veuillez consulter Traitement des tâches lentes
Configuration des fichiers de vue
L'extension ne peut être configurée que dans les options de view.php.
Usage obsolète
use support\view\Raw;
return [
'handler' => Raw::class,
'view_suffix' => '.php'
];
Usage correct
use support\view\Raw;
return [
'handler' => Raw::class,
'options' => [
'view_suffix' => '.php'
]
];
Changement de namespace du pilote de session
À partir de la version 1.4.0, webman a modifié l'espace de noms de la classe SessionHandler
de
use Webman\FileSessionHandler;
use Webman\RedisSessionHandler;
use Webman\RedisClusterSessionHandler;
à
use Webman\Session\FileSessionHandler;
use Webman\Session\RedisSessionHandler;
use Webman\Session\RedisClusterSessionHandler;
Pour éviter les erreurs directes après la mise à niveau, la classe Webman\FileSessionHandler
est toujours conservée pendant un certain temps et sera complètement supprimée dans les prochaines versions.
Ce changement impacte la configuration 'handler'
de config/session.php
.