{"id":25603,"date":"2025-02-27T16:46:04","date_gmt":"2025-02-27T15:46:04","guid":{"rendered":"https:\/\/www.codemotion.com\/magazine\/?p=25603"},"modified":"2025-02-27T16:48:52","modified_gmt":"2025-02-27T15:48:52","slug":"composer-come-funziona-il-gestore-di-pacchetti-di-php","status":"publish","type":"post","link":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/","title":{"rendered":"Composer: come funziona il gestore di pacchetti di PHP"},"content":{"rendered":"\n<p><strong>Composer <\/strong>come sistema per la gestione dei pacchetti \u00e8 stato sviluppato nel 2011 e pubblicato nel 2012 da Nils Adermann e Jordi Boggiano da allora ha superato e quasi soppiantato il precedente gestore di pacchetti <a class=\"ek-link\" href=\"https:\/\/pear.php.net\/\">PEAR<\/a> .<\/p>\n\n\n\n<p>In questo articolo scopriremo come pubblicare un pacchetto su Composer.<\/p>\n\n\n\n<p>Per iniziare, se non l&#8217;hai gi\u00e0 fatto, bisogna installare <a href=\"https:\/\/getcomposer.org\/download\/\" target=\"_blank\" rel=\"noreferrer noopener\">Composer<\/a> sulla propria macchina nel seguente modo:<\/p>\n\n\n\n<p>Apri il sito Composer scarica e installa il software oppure usando PHP CLI. In quest&#8217;ultimo caso devi aprire il terminale e mandare in esecuzione i comandi:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">&lt;code&gt;php -r <span class=\"hljs-string\">\"copy('https:\/\/getcomposer.org\/installer', 'composer-setup.php');\"<\/span>\nphp -r <span class=\"hljs-string\">\"if (hash_file('sha384', 'composer-setup.php') === 'dac665fdc30fdd8ec78b38b9800061b4150413ff2e3b6f88543c636f7cd84f6db9189d43a81e5503cda447da73c7e5b6') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;\"<\/span>\nphp composer-setup.php\nphp -r <span class=\"hljs-string\">\"unlink('composer-setup.php');\"<\/span>&lt;<span class=\"hljs-regexp\">\/code&gt;<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>Qualunque procedura usi per installare Composer devi essere sicuro che compaia nel PATH ambiente di windows. Quindi apri &#8220;modifica variabili di ambiente per l&#8217;account&#8221; clicca su &#8220;Variabili d&#8217;ambiente&#8221; poi variabili di sistema cerca la variabile &#8220;Path&#8221; modifica -> nuovo -> sfoglia qui inserisci la cartella dove si trova composer conferma le modifiche che saranno attive dopo il riavvio di Windows.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"908\" height=\"351\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/image-5.png\" alt=\"\" class=\"wp-image-32284\" srcset=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/image-5.png 908w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/image-5-300x116.png 300w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/image-5-768x297.png 768w\" sizes=\"auto, (max-width: 908px) 100vw, 908px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"766\" height=\"873\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/image-6.png\" alt=\"\" class=\"wp-image-32285\" srcset=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/image-6.png 766w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/image-6-263x300.png 263w\" sizes=\"auto, (max-width: 766px) 100vw, 766px\" \/><\/figure>\n\n\n\n<p>Cosi come potete vedere dall&#8221;immagine precedente il comando &#8220;composer init&#8221; chiede<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Package Name: il nome del package es.: utente\/progetto<\/li>\n\n\n\n<li>Author: qui chiede il nome e l&#8217;email dell&#8217;autore<\/li>\n\n\n\n<li>Description: una descrizione delle funzionalit\u00e0.<\/li>\n\n\n\n<li>Minimum Stability: minimum stability pu\u00f2 essere\n<ul class=\"wp-block-list\">\n<li>RC: &#8220;Relese candidate&#8221; Chiamato anche rilascio di produzione, il rilascio stabile \u00e8 l&#8217;ultimo candidato a rilascio (RC) che ha superato tutte le fasi di verifica e test. Tutti i bug resi noti sono considerati accettabili. Questa release va alla produzione.<\/li>\n\n\n\n<li>Stable: in generale senza problemi di stabilit\u00e0 o bug evidenti.<\/li>\n\n\n\n<li>Dev: in fase di sviluppo.<\/li>\n\n\n\n<li>alpha: una versione alfa o il rilascio di un pacchetto software intende fare qualcosa di particolare, per lo pi\u00f9 lo fa, ma non \u00e8 garantito per farlo completamente.<\/li>\n\n\n\n<li>beta: Il software di versione beta \u00e8 spesso utile per dimostrazioni e anteprime all&#8217;interno di un&#8217;organizzazione e ai potenziali clienti. Alcuni sviluppatori si riferiscono a questa fase come un&#8217;anteprima, una versione di anteprima, un prototipo, un&#8217;anteprima tecnica o un&#8217;anteprima della tecnologia.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Package Type: qui composer suggerisce library, package, project etc. se indichi il tipo project su packagist nelle indicazioni di installazione ci sar\u00e0 qualcosa come: <br><code>composer create-project utente\/progetto<\/code><br>altrimenti<br><code>composer require utente\/libreria<\/code><\/li>\n\n\n\n<li>License: Tipo di licenza MIT , Apache etc. qui il link per una lista di licenze registrate <a class=\"ek-link\" href=\"https:\/\/spdx.org\/licenses\/\">SPDX Licence List<\/a>.<\/li>\n<\/ul>\n\n\n\n<p>Una volta inizializzato il progetto dobbiamo inizializzare Git e pubblicare il codice su <a class=\"ek-link\" href=\"https:\/\/www.programmareinpython.it\/blog\/come-usare-git-e-github\/\">Github<\/a>.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"385\" height=\"111\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/image-7.png\" alt=\"\" class=\"wp-image-32286\" srcset=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/image-7.png 385w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/image-7-300x86.png 300w\" sizes=\"auto, (max-width: 385px) 100vw, 385px\" \/><\/figure><\/div>\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"790\" height=\"896\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/image-8.png\" alt=\"\" class=\"wp-image-32287\" srcset=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/image-8.png 790w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/image-8-265x300.png 265w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/image-8-768x871.png 768w\" sizes=\"auto, (max-width: 790px) 100vw, 790px\" \/><\/figure>\n\n\n\n<p>Registrarsi su <a href=\"https:\/\/packagist.org\/\">Packagist<\/a> e tramite il link <a href=\"https:\/\/packagist.org\/packages\/submit\">Submit<\/a> indicare il link del progetto su github es.: https:\/\/github.com\/company\/project.git una volta controllato e caricato packagist visualizzer\u00e0 i vari Branches o Tags per mostrare le varie versioni del pacchetto es.: v1.0.1, v1.1-BETA, v1.1-RC1&#8230;<\/p>\n\n\n\n<div class=\"wp-block-uagb-container uagb-block-6e21b424 alignfull uagb-is-root-container\"><div class=\"uagb-container-inner-blocks-wrap\">\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.manueldellagala.it\/composer\/img\/submit.png\" alt=\"\"\/><\/figure>\n<\/div><\/div>\n\n\n\n<p><code>composer validate<\/code>: controlla se ci sono errori nella struttura del progetto<\/p>\n\n\n\n<p>versioni in base al branch o al tag &#8220;minimum-stability&#8221; <\/p>\n\n\n\n<p>le versioni del pacchetto verranno pubblicate in base al ramo, al tag presenti nel repository di Github e in base al campo &#8220;minimum-stability&#8221; presente nel composer.json<\/p>\n\n\n\n<p>per esempio il ramo 2.0 con  &#8220;minimum-stability&#8221;: &#8220;dev&#8221;,  sar\u00e0 visualizzato sul sito di packagist come 2.x-dev <\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-conclusioni\">Conclusioni<\/h2>\n\n\n\n<p>Il gestore dei pacchetti Composer \u00e8 abbastanza semplice da usare, ma anche in certi casi molto rigido se non indichi l&#8217;esatta licenza oppure indichi una minimum-stability non corretta, www.packagist.org carica il progetto ma poi indica gli errori che bisogna correggere, esattamente come fa <code>composer validate<\/code> in ogni caso \u00e8 diventato uno strumento indispensabile per trovare e riusare librerie e progetti im modo facile e veloce.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-riferimenti\">Riferimenti<\/h2>\n\n\n\n<p><a href=\"https:\/\/getcomposer.org\/doc\/00-intro.md\">Composer<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/packagist.org\/\">Packagist<\/a><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Composer come sistema per la gestione dei pacchetti \u00e8 stato sviluppato nel 2011 e pubblicato nel 2012 da Nils Adermann e Jordi Boggiano da allora ha superato e quasi soppiantato il precedente gestore di pacchetti PEAR . In questo articolo scopriremo come pubblicare un pacchetto su Composer. Per iniziare, se non l&#8217;hai gi\u00e0 fatto, bisogna&#8230; <a class=\"more-link\" href=\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/\">Read more<\/a><\/p>\n","protected":false},"author":240,"featured_media":32291,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_editorskit_title_hidden":false,"_editorskit_reading_time":0,"_editorskit_is_block_options_detached":false,"_editorskit_block_options_position":"{}","_uag_custom_page_level_css":"","_genesis_hide_title":false,"_genesis_hide_breadcrumbs":false,"_genesis_hide_singular_image":false,"_genesis_hide_footer_widgets":false,"_genesis_custom_body_class":"","_genesis_custom_post_class":"","_genesis_layout":"","footnotes":""},"categories":[10263],"tags":[10446,13062,10438],"collections":[11708],"class_list":{"0":"post-25603","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-backend-it","8":"tag-github-it","9":"tag-php-it","10":"tag-sviluppo-software-it","11":"collections-dalla-community","12":"entry"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.9 (Yoast SEO v26.9) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Composer: come funziona il gestore di pacchetti di PHP<\/title>\n<meta name=\"description\" content=\"Scopri come pubblicare un pacchetto con Composer in pochi passaggi. Guida pratica e veloce per sviluppatori!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Composer: come funziona il gestore di pacchetti di PHP\" \/>\n<meta property=\"og:description\" content=\"Scopri come pubblicare un pacchetto con Composer in pochi passaggi. Guida pratica e veloce per sviluppatori!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/\" \/>\n<meta property=\"og:site_name\" content=\"Codemotion Magazine\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Codemotion.Italy\/\" \/>\n<meta property=\"article:published_time\" content=\"2025-02-27T15:46:04+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-02-27T15:48:52+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"1792\" \/>\n\t<meta property=\"og:image:height\" content=\"1024\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"Manuel della Gala\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@CodemotionIT\" \/>\n<meta name=\"twitter:site\" content=\"@CodemotionIT\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Manuel della Gala\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/\"},\"author\":{\"name\":\"Manuel della Gala\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/20c1f29275c0608535c0deb6f6a88016\"},\"headline\":\"Composer: come funziona il gestore di pacchetti di PHP\",\"datePublished\":\"2025-02-27T15:46:04+00:00\",\"dateModified\":\"2025-02-27T15:48:52+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/\"},\"wordCount\":546,\"publisher\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur.webp\",\"keywords\":[\"GitHub\",\"PHP\",\"sviluppo software\"],\"articleSection\":[\"Backend\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/\",\"name\":\"Composer: come funziona il gestore di pacchetti di PHP\",\"isPartOf\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur.webp\",\"datePublished\":\"2025-02-27T15:46:04+00:00\",\"dateModified\":\"2025-02-27T15:48:52+00:00\",\"description\":\"Scopri come pubblicare un pacchetto con Composer in pochi passaggi. Guida pratica e veloce per sviluppatori!\",\"breadcrumb\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/#primaryimage\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur.webp\",\"contentUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur.webp\",\"width\":1792,\"height\":1024},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.codemotion.com\/magazine\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Backend\",\"item\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Composer: come funziona il gestore di pacchetti di PHP\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#website\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/\",\"name\":\"Codemotion Magazine\",\"description\":\"We code the future. Together\",\"publisher\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.codemotion.com\/magazine\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#organization\",\"name\":\"Codemotion\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png\",\"contentUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png\",\"width\":225,\"height\":225,\"caption\":\"Codemotion\"},\"image\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/Codemotion.Italy\/\",\"https:\/\/x.com\/CodemotionIT\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/20c1f29275c0608535c0deb6f6a88016\",\"name\":\"Manuel della Gala\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/01\/fototessera-100x100.png\",\"contentUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/01\/fototessera-100x100.png\",\"caption\":\"Manuel della Gala\"},\"sameAs\":[\"http:\/\/www.manueldellagala.it\",\"https:\/\/www.linkedin.com\/in\/manuel-dellagala\/\"],\"url\":\"https:\/\/www.codemotion.com\/magazine\/author\/manuel-dellagalagmail-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Composer: come funziona il gestore di pacchetti di PHP","description":"Scopri come pubblicare un pacchetto con Composer in pochi passaggi. Guida pratica e veloce per sviluppatori!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/","og_locale":"en_US","og_type":"article","og_title":"Composer: come funziona il gestore di pacchetti di PHP","og_description":"Scopri come pubblicare un pacchetto con Composer in pochi passaggi. Guida pratica e veloce per sviluppatori!","og_url":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/","og_site_name":"Codemotion Magazine","article_publisher":"https:\/\/www.facebook.com\/Codemotion.Italy\/","article_published_time":"2025-02-27T15:46:04+00:00","article_modified_time":"2025-02-27T15:48:52+00:00","og_image":[{"width":1792,"height":1024,"url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur.webp","type":"image\/webp"}],"author":"Manuel della Gala","twitter_card":"summary_large_image","twitter_creator":"@CodemotionIT","twitter_site":"@CodemotionIT","twitter_misc":{"Written by":"Manuel della Gala","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/#article","isPartOf":{"@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/"},"author":{"name":"Manuel della Gala","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/20c1f29275c0608535c0deb6f6a88016"},"headline":"Composer: come funziona il gestore di pacchetti di PHP","datePublished":"2025-02-27T15:46:04+00:00","dateModified":"2025-02-27T15:48:52+00:00","mainEntityOfPage":{"@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/"},"wordCount":546,"publisher":{"@id":"https:\/\/www.codemotion.com\/magazine\/#organization"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/#primaryimage"},"thumbnailUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur.webp","keywords":["GitHub","PHP","sviluppo software"],"articleSection":["Backend"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/","url":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/","name":"Composer: come funziona il gestore di pacchetti di PHP","isPartOf":{"@id":"https:\/\/www.codemotion.com\/magazine\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/#primaryimage"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/#primaryimage"},"thumbnailUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur.webp","datePublished":"2025-02-27T15:46:04+00:00","dateModified":"2025-02-27T15:48:52+00:00","description":"Scopri come pubblicare un pacchetto con Composer in pochi passaggi. Guida pratica e veloce per sviluppatori!","breadcrumb":{"@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/#primaryimage","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur.webp","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur.webp","width":1792,"height":1024},{"@type":"BreadcrumbList","@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.codemotion.com\/magazine\/"},{"@type":"ListItem","position":2,"name":"Backend","item":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/"},{"@type":"ListItem","position":3,"name":"Composer: come funziona il gestore di pacchetti di PHP"}]},{"@type":"WebSite","@id":"https:\/\/www.codemotion.com\/magazine\/#website","url":"https:\/\/www.codemotion.com\/magazine\/","name":"Codemotion Magazine","description":"We code the future. Together","publisher":{"@id":"https:\/\/www.codemotion.com\/magazine\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.codemotion.com\/magazine\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.codemotion.com\/magazine\/#organization","name":"Codemotion","url":"https:\/\/www.codemotion.com\/magazine\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png","width":225,"height":225,"caption":"Codemotion"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Codemotion.Italy\/","https:\/\/x.com\/CodemotionIT"]},{"@type":"Person","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/20c1f29275c0608535c0deb6f6a88016","name":"Manuel della Gala","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/image\/","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/01\/fototessera-100x100.png","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/01\/fototessera-100x100.png","caption":"Manuel della Gala"},"sameAs":["http:\/\/www.manueldellagala.it","https:\/\/www.linkedin.com\/in\/manuel-dellagala\/"],"url":"https:\/\/www.codemotion.com\/magazine\/author\/manuel-dellagalagmail-com\/"}]}},"featured_image_src":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur-600x400.webp","featured_image_src_square":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur-600x600.webp","author_info":{"display_name":"Manuel della Gala","author_link":"https:\/\/www.codemotion.com\/magazine\/author\/manuel-dellagalagmail-com\/"},"uagb_featured_image_src":{"full":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur.webp",1792,1024,false],"thumbnail":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur-150x150.webp",150,150,true],"medium":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur-300x171.webp",300,171,true],"medium_large":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur-768x439.webp",768,439,true],"large":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur-1024x585.webp",1024,585,true],"1536x1536":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur-1536x878.webp",1536,878,true],"2048x2048":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur.webp",1792,1024,false],"small-home-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur-100x100.webp",100,100,true],"sidebar-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur-180x128.webp",180,128,true],"genesis-singular-images":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur-896x504.webp",896,504,true],"archive-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur-400x225.webp",400,225,true],"gb-block-post-grid-landscape":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur-600x400.webp",600,400,true],"gb-block-post-grid-square":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/02\/DALL\u00b7E-2025-02-27-16.11.21-A-digital-illustration-representing-PHP-Composer-the-dependency-manager-for-PHP.-The-image-features-a-modern-abstract-background-with-a-blue-and-pur-600x600.webp",600,600,true]},"uagb_author_info":{"display_name":"Manuel della Gala","author_link":"https:\/\/www.codemotion.com\/magazine\/author\/manuel-dellagalagmail-com\/"},"uagb_comment_info":0,"uagb_excerpt":"Composer come sistema per la gestione dei pacchetti \u00e8 stato sviluppato nel 2011 e pubblicato nel 2012 da Nils Adermann e Jordi Boggiano da allora ha superato e quasi soppiantato il precedente gestore di pacchetti PEAR . In questo articolo scopriremo come pubblicare un pacchetto su Composer. Per iniziare, se non l&#8217;hai gi\u00e0 fatto, bisogna&#8230;&hellip;","lang":"it","_links":{"self":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/25603","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/users\/240"}],"replies":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/comments?post=25603"}],"version-history":[{"count":2,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/25603\/revisions"}],"predecessor-version":[{"id":32293,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/25603\/revisions\/32293"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/media\/32291"}],"wp:attachment":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/media?parent=25603"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/categories?post=25603"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/tags?post=25603"},{"taxonomy":"collections","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/collections?post=25603"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}