Table des matières
Quel est le but principal de l'utilisation de phars en php?
comment créer un fichier phar?
Quels sont les avantages de l'utilisation d'applications de boxe comme Box-Project?
Comment utiliser Box-Project pour créer un fichier Phar?
Puis-je utiliser des phars avec des applications Web?
y a-t-il des problèmes de sécurité concernant l'utilisation des phars?
Comment mettre à jour un fichier phar?
Puis-je utiliser des phars avec des frameworks PHP?
Quelle est la différence entre Box-Project et Box-Project 2?
Comment résoudre les problèmes avec les phars?
Maison développement back-end tutoriel php Enfiler vos applications en tant que phars rapidement et facilement avec la boîte

Enfiler vos applications en tant que phars rapidement et facilement avec la boîte

Feb 17, 2025 am 11:22 AM

Ce didacticiel démontre l'emballage d'une application PHP dans un phar à l'aide d'une boîte, simplifiant la distribution et l'installation globale via le compositeur. Nous utiliserons FolderBuilder de Webiny (un outil pour concevoir interactivement les structures de dossiers de projet) comme notre exemple.

Boxing up your Apps as Phars Quickly and Easily with Box

Concepts clés:

  • La boîte rationalise la création de Phar pour un déploiement d'applications PHP facile et l'intégration des compositeurs.
  • A box.json Le fichier définit le contenu du phar (fichiers, point d'entrée, nom de fichier de sortie, etc.). La commande box construit le phar. L'ajout chmod à box.json rend l'exécutable phar.
  • Le champ bin du composer dans composer.json permet la distribution de Phar en tant qu'outil de ligne de commande globale (nécessite un téléchargement de packagist).

Configuration du projet:

Nous utiliserons le script PHP de FolderBuilder, qui génère des représentations JSON des structures de projet. Bien qu'il soit facilement exécuté directement, l'emballage en tant que phar améliore la convivialité:

composer global require webiny/folderbuilder
folderbuilder . > structure.json
Copier après la connexion

Création du projet de boîte:

Tout d'abord, Installer Box:

composer global require kherge/box
Copier après la connexion

Suivant, CLONE et CHECKOUT FOLDERDERBUILDER:

cd ~
git clone https://github.com/webiny/folderbuilder
cd folderbuilder
git checkout 74b234fa33bd69690a2c26df38ef7d188c4e69eb
Copier après la connexion

Créer box.json:

{
  "files": ["structure.php", "bin/stub.php"],
  "output": "bin/wfb.phar",
  "stub": true,
  "main": "bin/stub.php",
  "chmod": "0755",
  "compactors": ["Herrera\Box\Compactor\Json", "Herrera\Box\Compactor\Php"]
}
Copier après la connexion

Ce box.json Spécifie les fichiers inclus, le chemin de sortie, le stub, le point d'entrée, les autorisations exécutables et les compacteurs pour une taille de phar plus petite. Run:

box build -v
Copier après la connexion

Ensuite, renommer et tester:

mv bin/wfb.phar bin/wfb
bin/wfb
Copier après la connexion

Distribution avec compositeur:

Ajouter une entrée bin à composer.json:

"bin": ["bin/wfb"]
Copier après la connexion

Téléchargez le projet vers Packagist.

Test de l'installation globale:

Créez un nouvel environnement (par exemple, une instance de propriété familiale fraîche) et exécutez:

composer global require webiny/folderbuilder
wfb ~/Code > out.json
Copier après la connexion

Cela confirme la fonctionnalité du phar installé à l'échelle mondiale.

Boxing up your Apps as Phars Quickly and Easily with Box

Conclusion:

Ce didacticiel a détaillé la création et la distribution d'un phar PHP à l'aide de la boîte, améliorant le déploiement des applications et la convivialité. D'autres améliorations pourraient impliquer des mécanismes de signature du phar et de mise à jour automatique. FolderBuilder accueille les contributions pour élargir ses fonctionnalités.

Questions fréquemment posées (FAQ) sur les applications de boxe et les phars: (Cette section reste largement inchangée de l'entrée, car il s'agit d'une section FAQ utile et pertinente.)

Quel est le but principal de l'utilisation de phars en php?

phars, ou archives PHP, emballent des applications PHP entières dans un seul fichier pour une distribution et une installation faciles. Ils sont analogues aux fichiers de pot de Java, simplifiant le déploiement en consolidant tous les composants nécessaires.

comment créer un fichier phar?

La classe Phar dans PHP facilite la création de Phar. Vous instanciez la classe, ajoutez des fichiers à l'aide de addFile et enregistrez en utilisant stopBuffering. Un talon (un petit script exécuté sur l'exécution de Phar) peut également être défini.

Quels sont les avantages de l'utilisation d'applications de boxe comme Box-Project?

Les applications de boxe automatisent la création de Phar, rationalisant le processus de distribution. Des fonctionnalités telles que l'intégration GIT et le compositeur améliorent encore l'efficacité du flux de travail.

Comment utiliser Box-Project pour créer un fichier Phar?

Installez Box-Project, créez un box.json Fichier Définition des instructions d'emballage et utilisez la commande box pour générer le phar. Des options de compression et de configuration de talon sont disponibles.

Puis-je utiliser des phars avec des applications Web?

Oui, les PhAR fonctionnent comme des applications PHP régulières lorsqu'ils sont accessibles via un serveur Web. Cependant, assurez-vous que votre serveur Web est configuré pour exécuter des fichiers Phar.

y a-t-il des problèmes de sécurité concernant l'utilisation des phars?

Utilisez des phars à partir de sources de confiance et gardez-les à jour. Les paramètres de PHP phar.readonly et phar.require_hash améliorent la sécurité.

Comment mettre à jour un fichier phar?

Créez un nouveau phar avec les mises à jour et remplacez l'ancien. Cela peut être automatisé ou fait manuellement.

Puis-je utiliser des phars avec des frameworks PHP?

Oui, de nombreux frameworks prennent en charge les phars, vous permettant d'emballer votre application, y compris le framework, en un seul fichier.

Quelle est la différence entre Box-Project et Box-Project 2?

Box-Project 2 offre des améliorations par rapport à l'original, y compris la prise en charge des compositeurs, une meilleure gestion des erreurs et des améliorations de performances.

Comment résoudre les problèmes avec les phars?

Vérifiez le journal d'erreur PHP, testez sur différents systèmes et vérifiez la configuration PHP correcte. Les problèmes d'autorisations de fichiers sont également courants.

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Article chaud

Musée de deux points: Guide de localisation de Bungle Wasteland
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Article chaud

Musée de deux points: Guide de localisation de Bungle Wasteland
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Tags d'article chaud

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

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

11 meilleurs scripts de raccourcissement d'URL PHP (gratuit et premium) 11 meilleurs scripts de raccourcissement d'URL PHP (gratuit et premium) Mar 03, 2025 am 10:49 AM

11 meilleurs scripts de raccourcissement d'URL PHP (gratuit et premium)

Travailler avec les données de session Flash dans Laravel Travailler avec les données de session Flash dans Laravel Mar 12, 2025 pm 05:08 PM

Travailler avec les données de session Flash dans Laravel

6 compétences supplémentaires que chaque développeur PHP devrait avoir 6 compétences supplémentaires que chaque développeur PHP devrait avoir Feb 28, 2025 am 10:52 AM

6 compétences supplémentaires que chaque développeur PHP devrait avoir

Comprendre les tableaux en php Comprendre les tableaux en php Feb 28, 2025 am 10:53 AM

Comprendre les tableaux en php

Misque de réponse HTTP simplifié dans les tests Laravel Misque de réponse HTTP simplifié dans les tests Laravel Mar 12, 2025 pm 05:09 PM

Misque de réponse HTTP simplifié dans les tests Laravel

Construisez une application React avec un Laravel Back End: Partie 2, React Construisez une application React avec un Laravel Back End: Partie 2, React Mar 04, 2025 am 09:33 AM

Construisez une application React avec un Laravel Back End: Partie 2, React

12 meilleurs scripts de chat PHP sur Codecanyon 12 meilleurs scripts de chat PHP sur Codecanyon Mar 13, 2025 pm 12:08 PM

12 meilleurs scripts de chat PHP sur Codecanyon

Curl dans PHP: Comment utiliser l'extension PHP Curl dans les API REST Curl dans PHP: Comment utiliser l'extension PHP Curl dans les API REST Mar 14, 2025 am 11:42 AM

Curl dans PHP: Comment utiliser l'extension PHP Curl dans les API REST

See all articles