Unlimited Plugins, WordPress themes, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. PHP
Code

Comment utiliser le composant Symfony Filesystem

by
Difficulty:BeginnerLength:ShortLanguages:

French (Français) translation by Soleil (you can also view the original English article)

Dans cet article, nous allons explorer le composant Symfony Filesystem, qui fournit des méthodes utiles pour interagir avec un système de fichiers. Après l'installation et la configuration, nous allons créer quelques exemples concrets d'utilisation.

Le composant Symfony Filesystem

Le plus souvent, vous devrez interagir avec un système de fichiers si vous utilisez des applications PHP. Dans la plupart des cas, vous finissez par utiliser les fonctions PHP principales ou créez votre propre classe wrapper personnalisée pour obtenir la fonctionnalité souhaitée. De toute façon, il est difficile de maintenir sur une plus longue période de temps. Il vous faut donc une bibliothèque bien entretenue et facile à utiliser. C'est là que le composant Symfony Filesystem entre en jeu.

Le composant Symfony Filesystem fournit des méthodes d'encapsulation utiles qui facilitent l'interaction entre le système de fichiers et une expérience amusante. Regardons rapidement ce dont il est capable:

  • créer un répertoire
  • créer un fichier
  • modification du contenu du fichier
  • changer le propriétaire et le groupe d'un fichier ou d'un répertoire
  • créer un lien symbolique
  • copier un fichier ou un répertoire
  • supprimer un fichier ou un répertoire
  • et plus

Dans cet article, je vais vous montrer comment libérer le pouvoir du composant Symfony Filesystem. Comme d'habitude, nous commencerons par les instructions d'installation et de configuration, puis nous implémenterons quelques exemples concrets pour illustrer les concepts clés.

Installation et configuration

Dans cette section, nous allons installer le composant Symfony Filesystem. Je suppose que vous avez déjà installé Composer sur votre système car nous en aurons besoin pour installer le composant Filesystem disponible sur Packagist.

Alors, allez-y et installez le composant Filesystem à l'aide de la commande suivante.

Cela aurait dû créer un fichier composer.json, qui devrait ressembler à ceci:

Donc, c'est la partie installation, mais comment est-ce que vous êtes censé l'utiliser? En fait, il suffit d'inclure le fichier autoload.php créé par Composer dans votre application, comme illustré dans l'extrait suivant.

Un exemple concret

Dans cette section, nous allons créer un exemple qui montre comment utiliser le composant Filesystem dans vos applications pour effectuer diverses opérations sur les systèmes de fichiers.

Pour commencer, allons-y et créons le fichier index.php avec le contenu suivant.

Ici, nous avons initialisé l'objet Filesystem dans $fsObject et enregistré le répertoire actuel dans $ current_dir_path. Dans les prochaines sections, nous utiliserons $fsObject pour effectuer différentes opérations.

Créer un nouveau répertoire

Nous allons d'abord créer un nouveau répertoire.

Ici, nous avons utilisé la méthode exists pour vérifier si le répertoire foo existe déjà avant de le créer.

Ensuite, nous avons utilisé la méthode mkdir pour créer le répertoire foo avec les autorisations 0775, ce qui signifie lisible et exécutable par tous, mais uniquement accessible en écriture par le propriétaire du fichier et son groupe. (C'est la notation octale pour les permissions du système de fichiers - pour en savoir plus, consultez cette décomposition de la notation octale). De plus, nous avons utilisé les méthodes chown et chgrp pour changer le propriétaire et le groupe du répertoire foo.

Créer un nouveau fichier et ajouter du contenu

Dans cette section, nous allons créer un nouveau fichier et ajouter du contenu à ce fichier.

Ici, nous avons utilisé la méthode tctile pour créer un nouveau fichier, puis nous avons utilisé chmod pour définir ses autorisations sur 0777 - lisible globalement, accessible en écriture et exécutable.

Une fois le fichier créé, vous pouvez utiliser la méthode dumpFile pour ajouter du contenu dans ce fichier. En revanche, si vous souhaitez ajouter du contenu au fichier déjà existant, vous pouvez utiliser la méthode appendToFile, comme illustré dans l'exemple ci-dessus.

Copier un répertoire

Jusqu'à présent, nous avons créé le répertoire foo et le fichier bar.txt à l'aide de l'objet $fsObject. Dans cette section, nous verrons comment copier un répertoire avec le contenu.

Comme vous pouvez le voir, nous avons d'abord construit les noms de chemin avec une concaténation de chaînes. Ensuite, une fois que nous nous sommes assurés que le répertoire n’existait pas déjà avec la méthode exist, nous avons utilisé la méthode mirror pour copier le répertoire foo dans le répertoire foo_copy.

Supprimer un répertoire

Enfin, voyons comment supprimer un répertoire.

Encore une fois, c'est assez simple: pour supprimer un répertoire, il vous suffit d'utiliser la méthode remove.

Vous pouvez trouver le code complet dans index.php dans notre repo GitHub.

Conclusion

Voilà une brève introduction au composant Symfony Filesystem. Le composant Symfony Filesystem fournit des méthodes qui facilitent l’interaction avec un système de fichiers. Nous avons examiné comment installer le composant et nous avons créé quelques exemples pour illustrer les différents aspects du composant.

J'espère que vous avez apprécié cet article et n'hésitez pas à poster vos pensées en utilisant le flux ci-dessous!

Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.