12/08/2018, 12:16

tự tạo composer package cho php

Composer là ứng dụng giúp quản lý các thư viện bên ngoài trong project php. Composer giúp lập trình viên dễ dàng thêm, update, loại bỏ các thư viện một cách dễ dàng. Cài đặt Composer : thảm khảo tại https://viblo.asia/thangtd90/posts/jlA7GKWGKZQ2 của anh Tran Duc Thang Update php lên phiên ...

  • Composer là ứng dụng giúp quản lý các thư viện bên ngoài trong project php.
  • Composer giúp lập trình viên dễ dàng thêm, update, loại bỏ các thư viện một cách dễ dàng.
  • Cài đặt Composer : thảm khảo tại https://viblo.asia/thangtd90/posts/jlA7GKWGKZQ2 của anh Tran Duc Thang
  • Update php lên phiên bản 5.3 hoặc cao hơn.
  • Sử dụng phần mềm quản lý code git, svn
  • Tạo tài khoản github và packagist.org (có thể sử dụng luôn tài khoản github)

1 - Khởi tại project

  • Tạo thư mục: ** hello-world ** tại thư mục web root theo cấu trúc.

hello-world.png 2 - Tạo file composer.json với nội dung

{
    "name": "kynm/hello-world",
    "description": "the first composer package",
    "type": "php",
    "license": "aaa",
    "authors": [
        {
            "name": "kynm",
            "email": "nguyen.manh.ky@framgia.com"
        }
    ],
    "minimum-stability": "dev",
    "require": {
        "php": ">=5.3.0",
    },
    "autoload": {
        "psr-4": {
            "kynmSayHello": "src/"
        }
    }
}

3 - Tạo file Test.php

<?php
namespace kynmSayHello;
class SayHello
{
    public static function world()
    {
        return 'Hello World, Composer!';
    }
}

4 - push code lên github 5 - Đăng ký package trên packages.org:

  • Đăng nhập vào tài khoản
  • Truy cập link: https://packagist.org/packages/submit
  • Nhập đường dẫn github của package submitpackage.png
  • như vậy là đã tạo đăng ký thành công một package cho php
  • Trên file composer.json của project muốn include package đó cần thêm vào dòng
   "require": {
        "kynm/hello-world": "dev-master"
    }
  • Dùng lệnh : composer update để load package về project
  • Trên file index của project cần require file autoload
require_once __DIR__ . '/vendor/autoload.php';
  • Khi sử dụng chỉ cần sử dụng đúng namespace:
use kynmSayHelloSayhello;
$hello = new SayHello();
echo $hello->world();
  • Trên đây là những bước đơn giản nhất để có thể tạo ra một package composer cho một project php
  • Tư liệu tham khảo:
    • https://getcomposer.org/doc/00-intro.md
    • https://viblo.asia/thangtd90/posts/jlA7GKWGKZQ2
0