Sunday 9 December 2018

Composer

How to install Composer


// Get composer
# curl -s https://getcomposer.org/installer | php

// Test
#  composer

// Install a package for your project to start composer
# composer require fzaninotto/faker

// composer.json
{
  "require": {
    "fzaninotto/faker": "^1.5"
  }
}

// Update composer
# composer dumpautoload -o

// Require vendor autoload file on script
require_once __DIR__ . '/vendor/autoload.php';


Autoload Classes with Composer(PSR-4 way)

// Website folder structure:
your-website/
  src/
    Db.php
    Page.php
    User.php

// Give the classes a namespace

namespace Acme;

class Page {
    public function __construct()
    {
        echo "hello, i am a page.";
    }
}


// Point the namespace to the src/ directory in the composer.json file 
{
  "autoload": {
    "psr-4": {
      "Acme\\":"src/"
    }
  }
}

// update composer 
# composer dumpautoload -o

// Include vendor autoload in index.php
 
require "vendor/autoload.php";

use Acme\Db;
use Acme\User;
use Acme\Page;
 
$page1 = new Page();



Sources
PHP enthusiast

No comments:

Post a Comment