mirror of
https://github.com/yiisoft/yii2.git
synced 2025-08-15 23:04:54 +08:00
French intro-upgrade-from-v1 (wip) [skip ci]
This commit is contained in:
@ -2,7 +2,7 @@ Mise à jour depuis la version 1.1
|
|||||||
=================================
|
=================================
|
||||||
|
|
||||||
Il y a beaucoup de différences entre les versions 1.1 et 2.0 de Yii, le framework ayant été complètement réécrit pour la 2.0.
|
Il y a beaucoup de différences entre les versions 1.1 et 2.0 de Yii, le framework ayant été complètement réécrit pour la 2.0.
|
||||||
En conséquence, la mise à jour depuis la version 1.1 n'est pas aussi simple que la mise à jour entre deux versions mineures. Dans ce guide, vous
|
En conséquence, la mise à jour depuis la version 1.1 n'est pas aussi triviale que la mise à jour entre deux versions mineures. Dans ce guide, vous
|
||||||
trouverez les principales différences entre les deux versions.
|
trouverez les principales différences entre les deux versions.
|
||||||
|
|
||||||
Si vous n'avez pas utilisé Yii 1.1 avant, vous pouvez ignorer cette section et passer directement à la partie "[Mise en route] (start-installation.md)".
|
Si vous n'avez pas utilisé Yii 1.1 avant, vous pouvez ignorer cette section et passer directement à la partie "[Mise en route] (start-installation.md)".
|
||||||
@ -35,51 +35,51 @@ Voici un résumé des principaux changements concernant PHP:
|
|||||||
- Syntaxe courte pour les tableaux : `[...elements...]` est utilisé au lieu de `array(...elements...)`.
|
- Syntaxe courte pour les tableaux : `[...elements...]` est utilisé au lieu de `array(...elements...)`.
|
||||||
- Syntaxe courte pour echo : `<?=` est utilisé dans les vues. Cela ne pose aucun problème à partir de PHP 5.4.
|
- Syntaxe courte pour echo : `<?=` est utilisé dans les vues. Cela ne pose aucun problème à partir de PHP 5.4.
|
||||||
- [Classes SPL et interfaces](http://php.net/manual/fr/book.spl.php).
|
- [Classes SPL et interfaces](http://php.net/manual/fr/book.spl.php).
|
||||||
- [Late Static Bindings (Résolution statique à la volée)](http://php.net/manual/fr/language.oop5.late-static-bindings.php).
|
- [Late Static Bindings (résolution statique à la volée)](http://php.net/manual/fr/language.oop5.late-static-bindings.php).
|
||||||
- [Date et heure](http://php.net/manual/fr/book.datetime.php).
|
- [Date et heure](http://php.net/manual/fr/book.datetime.php).
|
||||||
- [Traits](http://php.net/manual/fr/language.oop5.traits.php).
|
- [Traits](http://php.net/manual/fr/language.oop5.traits.php).
|
||||||
- [intl](http://php.net/manual/fr/book.intl.php). Yii 2.0 utilise l'extension PHP `intl`
|
- [intl](http://php.net/manual/fr/book.intl.php). Yii 2.0 utilise l'extension PHP `intl`
|
||||||
pour les fonctionnalités d'internationalisation.
|
pour les fonctionnalités d'internationalisation.
|
||||||
|
|
||||||
|
|
||||||
Namespace
|
Espaces de Noms
|
||||||
---------
|
---------------
|
||||||
|
|
||||||
The most obvious change in Yii 2.0 is the use of namespaces. Almost every core class
|
Le changement le plus évident dans Yii 2.0 est l'utilisation des espaces de noms. La majorité des classes du noyau
|
||||||
is namespaced, e.g., `yii\web\Request`. The "C" prefix is no longer used in class names.
|
utilise les espace de noms, par exemple, `yii\web\Request`. Le préfixe «C» n'est plus utilisé dans les noms de classe.
|
||||||
The naming scheme now follows the directory structure. For example, `yii\web\Request`
|
Le schéma de nommage suit maintenant la structure des répertoires. Par exemple, `yii\web\Request`
|
||||||
indicates that the corresponding class file is `web/Request.php` under the Yii framework folder.
|
indique que le fichier de classe correspondant est `web/Request.php` dans le dossier du framework.
|
||||||
|
|
||||||
(You can use any core class without explicitly including that class file, thanks to the Yii
|
(Vous pouvez utiliser n'importe quelle classe du noyau sans inclure explicitement le fichier correspondant, grâce au
|
||||||
class loader.)
|
chargeur de classe de Yii.)
|
||||||
|
|
||||||
|
|
||||||
Component and Object
|
Composants et objets
|
||||||
--------------------
|
--------------------
|
||||||
|
|
||||||
Yii 2.0 breaks the `CComponent` class in 1.1 into two classes: [[yii\base\Object]] and [[yii\base\Component]].
|
Yii 2.0 décompose la classe `CComponent` 1.1 en deux classes: [[yii\base\Object]] et [[yii\base\Component]].
|
||||||
The [[yii\base\Object|Object]] class is a lightweight base class that allows defining [object properties](concept-properties.md)
|
Le classe [[yii\base\Object|Object]] est une classe de base légère qui permet de définir les [Propriétés de l'objet] (concept properties.md)
|
||||||
via getters and setters. The [[yii\base\Component|Component]] class extends from [[yii\base\Object|Object]] and supports
|
via des accesseurs. La classe [[yii\base\Component|Component]] est une sous classe de [[yii\base\Object|Object]] et supporte
|
||||||
[events](concept-events.md) and [behaviors](concept-behaviors.md).
|
les [Evénements] (concept events.md) et les [Comportements] (concept behaviors.md).
|
||||||
|
|
||||||
If your class does not need the event or behavior feature, you should consider using
|
Si votre classe n'a pas besoin des événements et des comportements, vous devriez envisager d'utiliser
|
||||||
[[yii\base\Object|Object]] as the base class. This is usually the case for classes that represent basic
|
[[yii\base\Object|Object]] comme classe de base. C'est généralement le cas pour les classes qui représentent
|
||||||
data structures.
|
une structures de données basique.
|
||||||
|
|
||||||
|
|
||||||
Object Configuration
|
Object Configuration
|
||||||
--------------------
|
--------------------
|
||||||
|
|
||||||
The [[yii\base\Object|Object]] class introduces a uniform way of configuring objects. Any descendant class
|
La classe [[yii\base\Object|Object]] introduit une manière uniforme pour configurer les objets. Toute sous classe
|
||||||
of [[yii\base\Object|Object]] should declare its constructor (if needed) in the following way so that
|
de [[yii\base\Object|Object]] doit déclarer son constructeur (si besoin) de la manière suivante afin qu'elle
|
||||||
it can be properly configured:
|
puisse être configurée correctement:
|
||||||
|
|
||||||
```php
|
```php
|
||||||
class MyClass extends \yii\base\Object
|
class MyClass extends \yii\base\Object
|
||||||
{
|
{
|
||||||
public function __construct($param1, $param2, $config = [])
|
public function __construct($param1, $param2, $config = [])
|
||||||
{
|
{
|
||||||
// ... initialization before configuration is applied
|
// ... initialisation avant que la configuration soit appliquée
|
||||||
|
|
||||||
parent::__construct($config);
|
parent::__construct($config);
|
||||||
}
|
}
|
||||||
@ -88,18 +88,18 @@ class MyClass extends \yii\base\Object
|
|||||||
{
|
{
|
||||||
parent::init();
|
parent::init();
|
||||||
|
|
||||||
// ... initialization after configuration is applied
|
// ... initialization après que la configuration soit appliquée
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
In the above, the last parameter of the constructor must take a configuration array
|
Dans ce qui précède, le dernier paramètre du constructeur doit être un tableau de configuration
|
||||||
that contains name-value pairs for initializing the properties at the end of the constructor.
|
qui contient des entrées nom-valeur pour initialiser les propriétés à la fin du constructeur.
|
||||||
You can override the [[yii\base\Object::init()|init()]] method to do initialization work that should be done after
|
Vous pouvez remplacer la méthode [[yii\base\Object::init()|init()]] pour le travail d'initialisation qui doit être fait après
|
||||||
the configuration has been applied.
|
que la configuration ait été appliquée.
|
||||||
|
|
||||||
By following this convention, you will be able to create and configure new objects
|
En suivant cette convention, vous serez en mesure de créer et de configurer de nouveaux objets
|
||||||
using a configuration array:
|
en utilisant un tableau de configuration:
|
||||||
|
|
||||||
```php
|
```php
|
||||||
$object = Yii::createObject([
|
$object = Yii::createObject([
|
||||||
@ -109,29 +109,28 @@ $object = Yii::createObject([
|
|||||||
], [$param1, $param2]);
|
], [$param1, $param2]);
|
||||||
```
|
```
|
||||||
|
|
||||||
More details about configurations can be found in the [Object Configurations](concept-configurations.md) section.
|
Plus de détails sur les configurations peuvent être trouvés dans la section [Configuration d'object](concept-configurations.md) section.
|
||||||
|
|
||||||
|
|
||||||
Events
|
Evénements
|
||||||
------
|
----------
|
||||||
|
|
||||||
In Yii 1, events were created by defining an `on`-method (e.g., `onBeforeSave`). In Yii 2, you can now use any event name. You trigger an event by calling
|
Avec Yii 1, les événements étaient créés par la définition d'une méthode `on` (par exemple `onBeforeSave`). Avec Yii 2, vous pouvez maintenant utiliser n'importe quel nom de l'événement. Vous déclenchez un événement en appelant
|
||||||
the [[yii\base\Component::trigger()|trigger()]] method:
|
la méthode [[yii\base\Component::trigger()|trigger()]] :
|
||||||
|
|
||||||
```php
|
```php
|
||||||
$event = new \yii\base\Event;
|
$event = new \yii\base\Event;
|
||||||
$component->trigger($eventName, $event);
|
$component->trigger($eventName, $event);
|
||||||
```
|
```
|
||||||
|
|
||||||
To attach a handler to an event, use the [[yii\base\Component::on()|on()]] method:
|
Pour attacher un gestionnaire à un événement, utilisez la méthode [[yii\base\Component::on()|on()]]:
|
||||||
|
|
||||||
```php
|
```php
|
||||||
$component->on($eventName, $handler);
|
$component->on($eventName, $handler);
|
||||||
// To detach the handler, use:
|
// Pour détacher le gestionnaire, utilisez :
|
||||||
// $component->off($eventName, $handler);
|
// $component->off($eventName, $handler);
|
||||||
```
|
```
|
||||||
|
Il y a de nombreuses améliorations dans la gestion des événements. Pour plus de détails, merci de lire la partie [Evénements](concept events.md).
|
||||||
There are many enhancements to the event features. For more details, please refer to the [Events](concept-events.md) section.
|
|
||||||
|
|
||||||
|
|
||||||
Path Aliases
|
Path Aliases
|
||||||
|
Reference in New Issue
Block a user