Integrando o Composer com o CodeIgniter

Nesse tutorial vou mostrar como integrar o Composer com a framework PHP CodeIgniter. Sozinhos eles já agilizam bastante o trabalho, juntos podem fazer muito mais.

Integrando o Composer com o CodeIgniter

Aumentar a produtividade e a qualidade dos nossos projetos é sempre importante, e ao final desse tutorial você saberá como melhorar a sua produtividade usando o gerenciador de pacotes Composer, junto com a framework PHP CodeIgniter. A primeira coisa a se fazer é o download do CodeIgniter, que atualmente está na versão 2.2.0. Clique aqui para fazer o download.

Feito o download, copie os diretórios "application" e "system" e o arquivo "index.php" para a pasta do projeto no seu servidor.

Após copiar os arquivos, vamo criar um segundo arquivo chamado "composer.json", esse tornará possível o gerenciamento correto dos pacotes. Nesse arquivo vamos informar que precisamos dos pacotes "PHPMailer" e "GravatarLib".

<h3>composer.json</h3>

{
    "require":
    {
        "phpmailer/phpmailer": "dev-master",
        "emberlabs/gravatarlib": "dev-master"
    }
}
Salve o arquivo "composer.json" na raiz do projeto, junto do arquivo "index.php".

O Composer utiliza, por padrão o diretório "Vendor" para armazenamento dos pacotes, mas para manter a estrutura padrão de diretórios do CodeIgniter, vamos modificar o diretório padrão do Composer. Considerando que os pacotes instalados via Composer são bibliotecas (libraries) podemos armazenar esses pacotes em "application/libraries", ou em "application/third_party". Para este tutorial utilizaremos o diretório "application/libraries".

Altere o seu arquivo "composer.json" da seguinte forma:

{
    "config":
    {
        "vendor-dir":"application/libraries"
    },

    "require":
    {
        "phpmailer/phpmailer": "dev-master"
    }
}

Com o arquivo "composer.json" pronto e com o diretório de armazenamento dos pacotes informados, agora precisamos fazer com que o CodeIgniter carregue esses pacotes. para isso vamos abrir o arquivo "index.php", que se encontra na raiz do diretório do projeto, e adicionar o código a seguir antes da chamada do bootstrap do CodeIgniter.

require_once $application_folder . '/libraries/autoload';

O código do arquivo "index.php" ficará com a sua parte final da seguinte forma:

/*
 * --------------------------------------------------------------------
 * COMPOSER AUTOLOAD
 * --------------------------------------------------------------------
 */
require_once $application_folder . '/libraries/autoload.php';


/*
 * --------------------------------------------------------------------
 * LOAD THE BOOTSTRAP FILE
 * --------------------------------------------------------------------
 *
 * And away we go...
 *
 */
require_once BASEPATH.'core/CodeIgniter.php';

/* End of file index.php */
/* Location: ./index.php */
Agora que os arquivos necessários já foram criados e atualizados e os pacotes necessários já foram informados, é hora de fazer a instalação do composer e dos pacotes.

Abra o terminal, pois agora o trabalho é feito via linha de comando, e vá até o diretório do projeto. O comando para abrir o diretório é:

cd /path/do/diretorio
A partir desse momento, tudo vai ser executado a partir do diretório do projeto. Vamos então instalar o composer com o seguinte comando:
composer install
Após executar esse comando, será feita a instalação do composer e dos pacotes informados no arquivo "composer.json".

Vejamos o que aconteceu após a instalação

Abra o gerenciador de arquivos, e vá até o diretório "application/libraries", lá você deverá encontrar um arquivo "autoload.php", o diretório do composer, o diretório do phpmailer e o diretório da emberlabs. Se esses diretórios e arquivos estiverem lá, excelente, você consegui integrar o CodeIgniter com o composer e agora não vai mais precisar ficar fazendo download de arquivos, descompactando e adicionando ao diretório. Basta utilizar os comandos do Composer, via Terminal, que você manterá os pacotes sempre atualizados.

Tudo o que você vai precisar daqui pra frente, é fazer as chamadas para as bibliotecas, conforme a necessidade, e ser feliz.

Até o próximo tutorial!

Review Notebook ASUS Zenbook 14 UX435: Duas telas, bateria top e muito bonito

O Zenbook 14 versão UX435E, acabou de ser lançado e, sim, a ASUS já nos enviou. Testei ele pelas últimas semanas trabalhando diretamente, minha vontade de mostrar essa segunda tela era tanta, mas não podia. Olha só que animal, o touchpad vira uma tela secundária, totalmente personalizável e útil. Vem ver o que o Zenbook 14 de 2021 tem para te oferecer, o que ele traz de novidades e claro, se vale a pena pagar o preço.

Conteúdo relacionado

Instalei a GCAM no Poco M3 E FICOU INCRÍVEL
Smartphones

Instalei a GCAM no Poco M3 E FICOU INCRÍVEL

Mais um smartphone que passa aqui pela redação do Oficina da Net e que instalamos a Gcam para ver se o resultado das fotos ficam maximizados com a ajuda do app do Google. Será que funcionou?

Como resolver o erro VCRUNTIME140.DLL do Wampserver?
Programação

Como resolver o erro VCRUNTIME140.DLL do Wampserver?

O erro acontece em uma nova instalação do WampServer, veja como resolver facilmente este problema.

Quer aprender PHP? Saiba mais
Programação

Quer aprender PHP? Saiba mais

Chegou o tão aguardado curso online de PHP do Oficina da Net. Você não pode perder. PHP é uma das linguagens mais usadas no mundo. Os conteúdos que vou mostrar no curso, são exatamente o que você precisa saber para iniciar sua carreira como programador.

Formulário de contato em php
Programação

Formulário de contato em php

Guia do PHP: Aprenda a fazer um formulário em PHP que envia via SMTP autenticado o e-mail para um destinatário.

Qual a melhor linguagem de programação?
Programação

Qual a melhor linguagem de programação?

Se você iniciou recentemente a graduação em alguma área ligada à tecnologia, seja ciências da computação, engenharia de software, de hardware, segurança da informação, etc. aposto que já se perguntou qual a melhor linguagem de programação, certo?

NetBeans - Novidades da Versão 8.1
Programação

NetBeans - Novidades da Versão 8.1

Esta é uma série de tutoriais sobre o NetBeans, uma IDE que uso a muitos anos e tem sido muito produtiva nas minhas atividades de desenvolvedor.