git ssb

0+

k4ml / belajar-js



Tree: 796b6192fec63c720b54c2f3a0666e07f3207553

Files: 796b6192fec63c720b54c2f3a0666e07f3207553 / _tips / pengenalan-composer.md

2372 bytesRaw

layout: tips title: PHP: Pengenalan kepada Composer author: kamalmustafa date: 2015-02-05 level: 2 summary: >

        Penerangan ringkas tentang penggunaan Composer dalam aplikasi PHP.

Composer adalah tools untuk mendapatkan dependencies bagi projek PHP anda. Sebelum Composer, jika anda ingin menggunakan sebarang library luar, anda perlu download ia terlebih dahulu, unzip (jika dalam bentuk archive), dan kemudian copy ke folder projek anda. Bagaimana pula jika library tersebut turut bergantung kepada library lain ? Ulang semula proses sebelum ini.

Terlebih dahulu anda perlu install composer. Ia boleh dilakukan melalui command berikut:-

curl -sS https://getcomposer.org/installer | php

Anda akan mendapat output seperti berikut:-

#!/usr/bin/env php
All settings correct for using Composer
Downloading...
Composer successfully installed to: /home/kamal/php/myshop/composer.phar
Use it: php composer.phar

Seterusnya, untuk men'download' library yang anda inginkan, bina fail bernama composer.json seperti berikut:-

{
    "require": {
        "swiftmailer/swiftmailer": "5.3.1"
    }
}

Kemudian, jalankan arahan berikut:-

php composer.phar install

Anda akan mendapat output lebih kurang seperti berikut apabila selesai:-

<a href="http://imgur.com/tVjCE09"><img src="http://i.imgur.com/tVjCE09.png" title="source: imgur.com" /></a>

<div class="admonition-info">
Perhatikan satu folder baru bernama <code>vendor</code> dibina. Ia akan mengandungi kesemua code yang di'download' melalui <code>composer</code>. </div>
<div>&nbsp;</div>

Setelah composer selesai download, anda boleh mula menggunakan library tersebut dalam script PHP anda dengan hanya menambah baris berikut:-

<?php
require 'vendor/autoload.php';

Contohnya, bina fail baru bernama mail.php seperti berikut:-

<?php
require 'vendor/autoload.php';

$transport = Swift_SmtpTransport::newInstance('127.0.0.1', 25);
$mailer = Swift_Mailer::newInstance($transport);

$message = Swift_Message::newInstance('Wonderful Subject')
  ->setFrom(array('john@doe.com' => 'John Doe'))
  ->setTo(array('kamal-test@mailinator.com'))
  ->setBody('Here is the message itself')
  ;

$result = $mailer->send($message);

Dan anda boleh jalankannya melalui php mail.php dan email akan dihantar.

Built with git-ssb-web