Packagist
め
す

への登録と

す
お

パッケージ
@slywalker (Yasuo Harada)
abou

t me
@slywalker
follo
w

@slywalker

me!
github.com/slywalker
fork
m

github.com/slywalker

e!
PHPエンジニア
養成読本
buy

PHPエンジニア
養成読本

now

!
star

now

!
大阪で
AWS+PHP(CakePHP)+MyS
QLを主に使って開発を行って
います。
Packagist
ライブラリを
登録してみよう!
ライブラリ準備
• 数字判定ライブラリ

(奇数、偶数、素数)

• PSR-0に従ったnamespace

名前空間の命名規則


<Vendor Name>(<Namespace>)*<Class Name>

•

https://github.com/slywalker/kof-sample-number
ライブラリ準備
.
├── README.md
├── composer.json
├── src
│   └── Kof
│  
└── Number.php
└── tests
├── Kof
│   └── Test
│  
└── NumberTest.php
└── bootstrap.php
Number.php
<?php
namespace Kof;
!

class Number
{
!

public $number = null;
!

public function __construct($number = null)
{
if (!is_null($number)) {
$this->set($number);
}
return $this;
}
composer.json
{
"name": "kof-sample/number",
"require": {
"php": ">=5.4"
},
"autoload": {
"psr-0": {"Kof": "src/"}
}
}

最低限これだけは必要
composer.json
{
"type": "library",
"description": "Number discrimination library",
"keywords": ["number", "even", "odd", "prime"],
"homepage": "https://github.com/slywalker/kof-sample-number",
"license": "MIT",
"authors": [
{
"name": "Yasuo Harada",
"email": "slywalker.net@gmail.com",
"homepage": "https://github.com/slywalker"
}
],
}

あると喜ばれる
おまけ
Travis-CI
• オープンソースコミュニティの為の、
ホスティング型継続的

インテグレーションサービス

• GitHubと連携し多数の言語を

スムーズにサポート

• git push のたびにテストがはしる
.travis.yml
language: php
!

php:
- 5.3
- 5.4
- 5.5
!

script:
- phpunit --bootstrap="tests/bootstrap.php" tests/
め
す

パッケージ

す
お
endroid/qrcode
• QRコードを生成するライブラリ
• 他にもいろいろありますが、


Packagistにもあるよってことで
inlinestyle/inlinestyle
• スタイルシートをHTMLのインライン
スタイルに適用するライブラリ

• 昔はガラケー用に需要がありました

が、現在もHTMLメールへの需要があ
る。
keboola/csv
• CSVファイルの読み込み、書き込み
• こういう処理はライブラリを使って
さっさと片付けてしまいましょう。
tedivm/fetch
• IMAP、POP3を操作するライブラリ
• 取得したメールの分解もやってくれる
chronon/mobile_detect

• デバイス判定のライブラリ
• かなり細かくやってくれる
opauth/opauth
• oauth用のライブラリ
• 多くのサービスに対応している
• 各フレームワークにも対応している
まだまだ、たくさんあります

• まずは検索してみよう
• ダウンロード数、TravisCIは信頼の証
• ドキュメントが充実していると

のちのち助かる

• 中身のコードを読んでみることも大切
ありがとうございます

Packagist