SlideShare una empresa de Scribd logo
1 de 42
Descargar para leer sin conexión
FuelPHPでの
ファイルアップロード
      2012/09/23
@FuelPHP 勉強会 東京 Vol.2

        kenjis
セッションコンセプト
セッションコンセプト
 できれば、ノークレームでお願いします
セッションコンセプト
 できれば、ノークレームでお願いします

 無理なら、その都度、穏やかに表現し溜
  め込まないでください
セッションコンセプト
 できれば、ノークレームでお願いします

 無理なら、その都度、穏やかに表現し溜
  め込まないでください

 発表内容にご不満がある場合は、ご自分
  ですごい内容の発表をお願いします
セッションコンセプト
 できれば、ノークレームでお願いします

 無理なら、その都度、穏やかに表現し溜
  め込まないでください

 発表内容にご不満がある場合は、ご自分
  ですごい内容の発表をお願いします

 スタッフの対応にご不満がある場合は、
  ご自分がスタッフをして改善してくださ
  い
自己紹介



 kenjis

 「はじめてのフレームワークとしての
  FuelPHP」(達人出版会)著者

 2012年7月現在、日本に5人しかいない
  「PHP5技術者認定上級試験」の認定者の
  1人
PHP技術者認定機構




http://www.phpexam.jp/
Uploadクラス
 FuelPHPにはアップロードを処理する
  Uploadクラスがある

 ドキュメント
 http://press.nekoget.com/fuelphp_doc/classes/upload/config.html


 割と柔軟な感じ
Uploadクラスの使い方
1.設定

2.アップロード処理

3.バリデーションの追加方法
Uploadクラスの設定
 設定ファイルでの設定

 ➔ config/upload.php

 使い方

 ➔ core/config/upload.phpを
  app/config/にコピーして変更する

 ➔ app/config/upload.phpの設定値で
  上書きされる
Uploadクラスの設定
    変数での設定

      ➔ Upload::process()に配列で設定を渡
         す

    使い方
$config = array(
      'path'          => DOCROOT . 'uploads/',       // 保存先フォルダ
      'ext_whitelist' => array('gif', 'jpg', 'png'), // 許可する拡張子
      'max_size'      => 100 * 1024,                 // 最大サイズ(100KB)
);

Upload::process($config);
主要な設定項目
 max_size

 ➔ ファイルの最大サイズ

 ext_whitelist

 ➔ 拡張子のホワイトリスト

 path

 ➔ ファイルの保存先
その他の設定項目
 type_whitelist

 ➔ MIMEのタイプのホワイトリスト
   (type/subtypeのtypeの部分)

 mime_whitelist

 ➔ MIMEタイプのホワイトリスト

 詳細は、公式ドキュメント参照
アップロード処理の流れ
// アップロード処理
Upload::process($config);

// 検証
if (Upload::is_valid())
{
      // ファイルの保存など
}

foreach (Upload::get_errors() as $file)
{
      // エラーファイルの処理
}

foreach (Upload::get_files() as $file)
{
      // 成功したファイルの処理
}
バリデーションの追加方法
 イベントが使える

 Upload::register($event, $callback)

 イベント名

 ➔ validate … 検証時

 ➔ before … ファイル移動の前

 ➔ after … ファイル移動の後
バリデーションの追加方法
 画像の検証を追加する例
 Upload::register('validate', function (&$file) {
       if ($file['error'] == Upload::UPLOAD_ERR_OK)
       {
             switch($file['extension'])
             {
                   case 'jpg':
                   case 'png':
                   case 'gif':
                         // 画像の検証
                   default:
             }
       }
 });
Uploadクラスのサンプル
 https://github.com/kenjis/fuel-samples

 デモ

 ➔ http://test.fuelphp1st.com/fuel-samples/upload
Uploadクラスのバグ
 サンプルを作ってるときにバグを発見

 auto_rename

 ➔ 同じファイル名のファイルがアップされ
   た場合、「_1」のようにファイル名を
   変更して上書きしない機能

 ➔ デフォルトでtrue
Uploadクラスのバグ
  auto_renameのファイルチェック
// check if the file already exists
if (file_exists($path.implode('', $save_as)))
{
      if ( (bool) static::$config['auto_rename'])
      {
            $counter = 0;
            do
            {
                  $save_as[3] = '_'.++$counter;
            }
            while (file_exists($path.implode('', $save_as)));
      }
      else
      ...略...
}
...略...
if( ! @move_uploaded_file($file['file'],
static::$files[$key]['saved_to'].static::$files[$key]['saved_as']) )
...略...
Uploadクラスのバグ
 auto_renameのファイルチェック

 ➔ ファイルが存在するかチェック

 ➔ 存在すれば数字を足してまたチェックを
  繰り返す

 ➔ その後、move_uploaded_file()で
  ファイルを移動

 ➔ 同時に存在チェックが走れば、後で移動
  されたファイルで上書きされる
Uploadクラスのバグ
 ただし、実際に遭遇する可能性は低い

➔ 同じファイル名のファイルがガンガン同
  時にアップロードされる必要がある

➔ 想定しづらい

➔ でも、気持ち悪い
Uploadクラスのバグ
 テストは書ける

 Guzzleを使ったファンクショナルテスト
 $client = new GuzzleHttpClient(static::open('upload'));

 $expected = 20; // 同時アクセス
 $array = array();
 for ($i = 0; $i < $expected; $i++)
 {
       $array[] = $client->post()
                   ->addPostFields(array('name' => 'file'))
                   ->addPostFiles(array(
                         'file' => APPPATH . 'tests/fixture/drops.png'
                   ));
 }

 $responses = $client->send($array);
Uploadクラスのバグ
 というわけで、Pull Request
 ➔ https://github.com/fuel/core/pull/1152
Pull Requestしよう
 バグを見つけたら、Pull Requestしま
  しょう
Pull Requestしよう
 バグを見つけたら、Pull Requestしま
  しょう

 やりかたがわからない?
Pull Requestしよう
 バグを見つけたら、Pull Requestしま
  しょう

 やりかたがわからない?

 『FuelPHPに貢献する方法』(無料)に書
  いてあります
 ➔ https://leanpub.com/how_to_contribute_fuelphp_ja
『FuelPHPに貢献する方法』




https://leanpub.com/how_to_contribute_fuelphp_ja
『FuelPHPに貢献する方法』
『FuelPHPに貢献する方法』
Uploadクラスの実例
 https://github.com/kenjis/epub-converter

 デモ

 ➔ http://test.fuelphp1st.com/epub-converter/
Uploadクラスの実例
 https://github.com/kenjis/epub-converter

 EPUBファイルをアップロードしてKobo用に最適化
  =KOBO EPUB(kepub)の作成

 ➔ EPUBをアップロード

 ➔ EPUB=Zipファイルを展開

 ➔ 中のxhtmlなどを変更

 ➔ Zipアーカイブを作成=kepubの作成

 ➔ 作成したkepubをダウンロード
最後に
最後に
 FuelPHPの日本語情報をもっと増やそう!
最後に
 ブログを書こう!

 ➔ 調べたこと、やったことを

 ➔ 公式ドキュメントにあることでもOK

 ➔ 詰まったことはブログやMLに

 ➔ 間違ったことをブログに書いても訂正し
  てもらえるかも

 ブログを書いたらtwitterでつぶやこう
最後に
 ソースを読もう

 バグは報告やPull Requestしよう

 一般性があれば、オレオレ化でなくPull
  Requestしてみよう
最後に
 イベントや勉強会で発表しよう!

➔ FuelPHP勉強会

➔ PHP勉強会

➔ PHPカンファレンス

➔ その他

 勉強会をやってみよう!
最後に
 書籍を出版しよう!
最後に
 書籍を出版しよう!
最後に
最後に
 情報が増えるとみんなが楽になる

 FuelPHPはまだ始まったばかりです
最後に
 情報が増えるとみんなが楽になる

 FuelPHPはまだ始まったばかりです

 家に帰ってブログを書くまでが勉強会で
  す

Más contenido relacionado

Destacado

J1939 stack integration with an advanced EPS system | Automotive Tier-I Suppl...
J1939 stack integration with an advanced EPS system | Automotive Tier-I Suppl...J1939 stack integration with an advanced EPS system | Automotive Tier-I Suppl...
J1939 stack integration with an advanced EPS system | Automotive Tier-I Suppl...Embitel Technologies (I) PVT LTD
 
Save The Date
Save The  DateSave The  Date
Save The DateRoyanna
 
Attack Toolkit Webinar on Tobacco Industry Marketing
Attack Toolkit Webinar on Tobacco Industry MarketingAttack Toolkit Webinar on Tobacco Industry Marketing
Attack Toolkit Webinar on Tobacco Industry MarketingAlex T.
 
Keynote Talk - Is agile struggling in India
Keynote Talk - Is agile struggling in IndiaKeynote Talk - Is agile struggling in India
Keynote Talk - Is agile struggling in IndiaNaveen Nanjundappa
 
Becky kelly[1]
Becky kelly[1]Becky kelly[1]
Becky kelly[1]rkelly2010
 
Web API Classification Survey
Web API Classification Survey Web API Classification Survey
Web API Classification Survey mmaleshkova
 
CodeIgniter 最新情報 2011 (増補版)
CodeIgniter 最新情報 2011 (増補版)CodeIgniter 最新情報 2011 (増補版)
CodeIgniter 最新情報 2011 (増補版)kenjis
 
Manual de Identidade Visual - Amanda Melina
Manual de Identidade Visual - Amanda MelinaManual de Identidade Visual - Amanda Melina
Manual de Identidade Visual - Amanda MelinaGustavo Macedo
 
EADL conference: Towards National stratgies for OER? The Dutch landscape, Fre...
EADL conference: Towards National stratgies for OER? The Dutch landscape, Fre...EADL conference: Towards National stratgies for OER? The Dutch landscape, Fre...
EADL conference: Towards National stratgies for OER? The Dutch landscape, Fre...Fred de Vries
 
CREATIVE FINANCING
CREATIVE FINANCINGCREATIVE FINANCING
CREATIVE FINANCINGSUSAN HARVEY
 

Destacado (16)

Summary of Scrum Guide
Summary of Scrum GuideSummary of Scrum Guide
Summary of Scrum Guide
 
J1939 stack integration with an advanced EPS system | Automotive Tier-I Suppl...
J1939 stack integration with an advanced EPS system | Automotive Tier-I Suppl...J1939 stack integration with an advanced EPS system | Automotive Tier-I Suppl...
J1939 stack integration with an advanced EPS system | Automotive Tier-I Suppl...
 
Save The Date
Save The  DateSave The  Date
Save The Date
 
Attack Toolkit Webinar on Tobacco Industry Marketing
Attack Toolkit Webinar on Tobacco Industry MarketingAttack Toolkit Webinar on Tobacco Industry Marketing
Attack Toolkit Webinar on Tobacco Industry Marketing
 
Nida presentation
Nida presentationNida presentation
Nida presentation
 
HELOC COMBO
HELOC COMBOHELOC COMBO
HELOC COMBO
 
Communication issues TMT 2013
Communication issues TMT 2013Communication issues TMT 2013
Communication issues TMT 2013
 
Keynote Talk - Is agile struggling in India
Keynote Talk - Is agile struggling in IndiaKeynote Talk - Is agile struggling in India
Keynote Talk - Is agile struggling in India
 
Becky kelly[1]
Becky kelly[1]Becky kelly[1]
Becky kelly[1]
 
Web API Classification Survey
Web API Classification Survey Web API Classification Survey
Web API Classification Survey
 
CodeIgniter 最新情報 2011 (増補版)
CodeIgniter 最新情報 2011 (増補版)CodeIgniter 最新情報 2011 (増補版)
CodeIgniter 最新情報 2011 (増補版)
 
Manual de Identidade Visual - Amanda Melina
Manual de Identidade Visual - Amanda MelinaManual de Identidade Visual - Amanda Melina
Manual de Identidade Visual - Amanda Melina
 
Segunda actividad
Segunda actividadSegunda actividad
Segunda actividad
 
บุหรี่
บุหรี่บุหรี่
บุหรี่
 
EADL conference: Towards National stratgies for OER? The Dutch landscape, Fre...
EADL conference: Towards National stratgies for OER? The Dutch landscape, Fre...EADL conference: Towards National stratgies for OER? The Dutch landscape, Fre...
EADL conference: Towards National stratgies for OER? The Dutch landscape, Fre...
 
CREATIVE FINANCING
CREATIVE FINANCINGCREATIVE FINANCING
CREATIVE FINANCING
 

Similar a FuelPHPでのファイルアップロード

10分でわかるFuelPHP @ 2011/12
10分でわかるFuelPHP @ 2011/1210分でわかるFuelPHP @ 2011/12
10分でわかるFuelPHP @ 2011/12kenjis
 
04 filesystem include
04 filesystem include04 filesystem include
04 filesystem include文樹 高橋
 
10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoya
 10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoya 10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoya
10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoyakenjis
 
behatエクステンションの作り方
behatエクステンションの作り方behatエクステンションの作り方
behatエクステンションの作り方Ryo Tomidokoro
 
10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
 10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1 10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1kenjis
 
FuelPHPにアプリと管理ツールを同居してみる
FuelPHPにアプリと管理ツールを同居してみるFuelPHPにアプリと管理ツールを同居してみる
FuelPHPにアプリと管理ツールを同居してみるMakoto Shimoda
 
WordCamp Kansai 2015 CI ハンズオン
WordCamp Kansai 2015 CI ハンズオンWordCamp Kansai 2015 CI ハンズオン
WordCamp Kansai 2015 CI ハンズオンタカシ キタジマ
 
最近、僕がハマったFuelPHPの紹介
最近、僕がハマったFuelPHPの紹介最近、僕がハマったFuelPHPの紹介
最近、僕がハマったFuelPHPの紹介Naoto Mawatari
 
Introduction to Continuous Test Runner MakeGood
Introduction to Continuous Test Runner MakeGoodIntroduction to Continuous Test Runner MakeGood
Introduction to Continuous Test Runner MakeGoodAtsuhiro Kubo
 
debexpo(mentors.d.n)をハックするには
debexpo(mentors.d.n)をハックするにはdebexpo(mentors.d.n)をハックするには
debexpo(mentors.d.n)をハックするにはkenhys
 
知って得する標準関数の使い方
知って得する標準関数の使い方知って得する標準関数の使い方
知って得する標準関数の使い方Soudai Sone
 
omoon.org の裏側 〜FuelPHP の task 活用例〜
omoon.org の裏側 〜FuelPHP の task 活用例〜omoon.org の裏側 〜FuelPHP の task 活用例〜
omoon.org の裏側 〜FuelPHP の task 活用例〜Sotaro Omura
 
Powershell 超絶基礎 勉強会 v1 (もっと新しいバージョンがあります)
Powershell 超絶基礎 勉強会 v1 (もっと新しいバージョンがあります)Powershell 超絶基礎 勉強会 v1 (もっと新しいバージョンがあります)
Powershell 超絶基礎 勉強会 v1 (もっと新しいバージョンがあります)Tetsu Yama
 
Powershell勉強会 v3 (もっと新しいバージョンがあります)
Powershell勉強会 v3 (もっと新しいバージョンがあります)Powershell勉強会 v3 (もっと新しいバージョンがあります)
Powershell勉強会 v3 (もっと新しいバージョンがあります)Tetsu Yama
 
Powershell勉強会 v2 (もっと新しいバージョンがあります)
Powershell勉強会 v2 (もっと新しいバージョンがあります)Powershell勉強会 v2 (もっと新しいバージョンがあります)
Powershell勉強会 v2 (もっと新しいバージョンがあります)Tetsu Yama
 
Laravel 5.3 で basic task list を作ろう!
Laravel 5.3 で basic task list を作ろう!Laravel 5.3 で basic task list を作ろう!
Laravel 5.3 で basic task list を作ろう!シオリ ショウノ
 
最新PHP事情 (2000年7月22日,PHPカンファレンス)
最新PHP事情 (2000年7月22日,PHPカンファレンス)最新PHP事情 (2000年7月22日,PHPカンファレンス)
最新PHP事情 (2000年7月22日,PHPカンファレンス)Rui Hirokawa
 
[JavaDo] JAX-RS ハンズオン 第2部
[JavaDo] JAX-RS ハンズオン 第2部[JavaDo] JAX-RS ハンズオン 第2部
[JavaDo] JAX-RS ハンズオン 第2部haruki ueno
 

Similar a FuelPHPでのファイルアップロード (20)

10分でわかるFuelPHP @ 2011/12
10分でわかるFuelPHP @ 2011/1210分でわかるFuelPHP @ 2011/12
10分でわかるFuelPHP @ 2011/12
 
04 filesystem include
04 filesystem include04 filesystem include
04 filesystem include
 
10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoya
 10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoya 10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoya
10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoya
 
behatエクステンションの作り方
behatエクステンションの作り方behatエクステンションの作り方
behatエクステンションの作り方
 
10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
 10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1 10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
 
FuelPHPにアプリと管理ツールを同居してみる
FuelPHPにアプリと管理ツールを同居してみるFuelPHPにアプリと管理ツールを同居してみる
FuelPHPにアプリと管理ツールを同居してみる
 
WordCamp Kansai 2015 CI ハンズオン
WordCamp Kansai 2015 CI ハンズオンWordCamp Kansai 2015 CI ハンズオン
WordCamp Kansai 2015 CI ハンズオン
 
最近、僕がハマったFuelPHPの紹介
最近、僕がハマったFuelPHPの紹介最近、僕がハマったFuelPHPの紹介
最近、僕がハマったFuelPHPの紹介
 
Introduction to Continuous Test Runner MakeGood
Introduction to Continuous Test Runner MakeGoodIntroduction to Continuous Test Runner MakeGood
Introduction to Continuous Test Runner MakeGood
 
What is chef
What is chefWhat is chef
What is chef
 
debexpo(mentors.d.n)をハックするには
debexpo(mentors.d.n)をハックするにはdebexpo(mentors.d.n)をハックするには
debexpo(mentors.d.n)をハックするには
 
知って得する標準関数の使い方
知って得する標準関数の使い方知って得する標準関数の使い方
知って得する標準関数の使い方
 
omoon.org の裏側 〜FuelPHP の task 活用例〜
omoon.org の裏側 〜FuelPHP の task 活用例〜omoon.org の裏側 〜FuelPHP の task 活用例〜
omoon.org の裏側 〜FuelPHP の task 活用例〜
 
Powershell 超絶基礎 勉強会 v1 (もっと新しいバージョンがあります)
Powershell 超絶基礎 勉強会 v1 (もっと新しいバージョンがあります)Powershell 超絶基礎 勉強会 v1 (もっと新しいバージョンがあります)
Powershell 超絶基礎 勉強会 v1 (もっと新しいバージョンがあります)
 
Powershell勉強会 v3 (もっと新しいバージョンがあります)
Powershell勉強会 v3 (もっと新しいバージョンがあります)Powershell勉強会 v3 (もっと新しいバージョンがあります)
Powershell勉強会 v3 (もっと新しいバージョンがあります)
 
Powershell勉強会 v2 (もっと新しいバージョンがあります)
Powershell勉強会 v2 (もっと新しいバージョンがあります)Powershell勉強会 v2 (もっと新しいバージョンがあります)
Powershell勉強会 v2 (もっと新しいバージョンがあります)
 
Task
TaskTask
Task
 
Laravel 5.3 で basic task list を作ろう!
Laravel 5.3 で basic task list を作ろう!Laravel 5.3 で basic task list を作ろう!
Laravel 5.3 で basic task list を作ろう!
 
最新PHP事情 (2000年7月22日,PHPカンファレンス)
最新PHP事情 (2000年7月22日,PHPカンファレンス)最新PHP事情 (2000年7月22日,PHPカンファレンス)
最新PHP事情 (2000年7月22日,PHPカンファレンス)
 
[JavaDo] JAX-RS ハンズオン 第2部
[JavaDo] JAX-RS ハンズオン 第2部[JavaDo] JAX-RS ハンズオン 第2部
[JavaDo] JAX-RS ハンズオン 第2部
 

Más de kenjis

AspectMock 最強のモッキングフレームワーク
AspectMock 最強のモッキングフレームワークAspectMock 最強のモッキングフレームワーク
AspectMock 最強のモッキングフレームワークkenjis
 
『はじめてのフレームワークとしてのFuelPHP 改訂版(第2版)』のポイント
『はじめてのフレームワークとしてのFuelPHP 改訂版(第2版)』のポイント『はじめてのフレームワークとしてのFuelPHP 改訂版(第2版)』のポイント
『はじめてのフレームワークとしてのFuelPHP 改訂版(第2版)』のポイントkenjis
 
10分でわかるFuelPHP @ OSC2013 Nagoya
10分でわかるFuelPHP @ OSC2013 Nagoya10分でわかるFuelPHP @ OSC2013 Nagoya
10分でわかるFuelPHP @ OSC2013 Nagoyakenjis
 
はじめてのMercurial/Bitbucket その2
 はじめてのMercurial/Bitbucket その2 はじめてのMercurial/Bitbucket その2
はじめてのMercurial/Bitbucket その2kenjis
 
フレームワーク入門書の決定版が完成
フレームワーク入門書の決定版が完成フレームワーク入門書の決定版が完成
フレームワーク入門書の決定版が完成kenjis
 
達人出版会からPHPの本を出版しよう
達人出版会からPHPの本を出版しよう達人出版会からPHPの本を出版しよう
達人出版会からPHPの本を出版しようkenjis
 
CodeIgniterユーザガイドの翻訳に参加しよう!
CodeIgniterユーザガイドの翻訳に参加しよう!CodeIgniterユーザガイドの翻訳に参加しよう!
CodeIgniterユーザガイドの翻訳に参加しよう!kenjis
 
はじめてのMercurial/Bitbucket
はじめてのMercurial/BitbucketはじめてのMercurial/Bitbucket
はじめてのMercurial/Bitbucketkenjis
 
CodeIgniter 最新情報 2010
CodeIgniter 最新情報 2010CodeIgniter 最新情報 2010
CodeIgniter 最新情報 2010kenjis
 
『PHP逆引きレシピ』とセキュリティのこと
『PHP逆引きレシピ』とセキュリティのこと『PHP逆引きレシピ』とセキュリティのこと
『PHP逆引きレシピ』とセキュリティのことkenjis
 
CodeIgniter 貴方はどのフレームワークを使うべきか?
CodeIgniter 貴方はどのフレームワークを使うべきか?CodeIgniter 貴方はどのフレームワークを使うべきか?
CodeIgniter 貴方はどのフレームワークを使うべきか?kenjis
 
CodeIgniterによるPhwittr
CodeIgniterによるPhwittrCodeIgniterによるPhwittr
CodeIgniterによるPhwittrkenjis
 
CodeIgniter 〜 2008年大躍進のPHPフレームワーク
CodeIgniter 〜 2008年大躍進のPHPフレームワークCodeIgniter 〜 2008年大躍進のPHPフレームワーク
CodeIgniter 〜 2008年大躍進のPHPフレームワークkenjis
 

Más de kenjis (13)

AspectMock 最強のモッキングフレームワーク
AspectMock 最強のモッキングフレームワークAspectMock 最強のモッキングフレームワーク
AspectMock 最強のモッキングフレームワーク
 
『はじめてのフレームワークとしてのFuelPHP 改訂版(第2版)』のポイント
『はじめてのフレームワークとしてのFuelPHP 改訂版(第2版)』のポイント『はじめてのフレームワークとしてのFuelPHP 改訂版(第2版)』のポイント
『はじめてのフレームワークとしてのFuelPHP 改訂版(第2版)』のポイント
 
10分でわかるFuelPHP @ OSC2013 Nagoya
10分でわかるFuelPHP @ OSC2013 Nagoya10分でわかるFuelPHP @ OSC2013 Nagoya
10分でわかるFuelPHP @ OSC2013 Nagoya
 
はじめてのMercurial/Bitbucket その2
 はじめてのMercurial/Bitbucket その2 はじめてのMercurial/Bitbucket その2
はじめてのMercurial/Bitbucket その2
 
フレームワーク入門書の決定版が完成
フレームワーク入門書の決定版が完成フレームワーク入門書の決定版が完成
フレームワーク入門書の決定版が完成
 
達人出版会からPHPの本を出版しよう
達人出版会からPHPの本を出版しよう達人出版会からPHPの本を出版しよう
達人出版会からPHPの本を出版しよう
 
CodeIgniterユーザガイドの翻訳に参加しよう!
CodeIgniterユーザガイドの翻訳に参加しよう!CodeIgniterユーザガイドの翻訳に参加しよう!
CodeIgniterユーザガイドの翻訳に参加しよう!
 
はじめてのMercurial/Bitbucket
はじめてのMercurial/BitbucketはじめてのMercurial/Bitbucket
はじめてのMercurial/Bitbucket
 
CodeIgniter 最新情報 2010
CodeIgniter 最新情報 2010CodeIgniter 最新情報 2010
CodeIgniter 最新情報 2010
 
『PHP逆引きレシピ』とセキュリティのこと
『PHP逆引きレシピ』とセキュリティのこと『PHP逆引きレシピ』とセキュリティのこと
『PHP逆引きレシピ』とセキュリティのこと
 
CodeIgniter 貴方はどのフレームワークを使うべきか?
CodeIgniter 貴方はどのフレームワークを使うべきか?CodeIgniter 貴方はどのフレームワークを使うべきか?
CodeIgniter 貴方はどのフレームワークを使うべきか?
 
CodeIgniterによるPhwittr
CodeIgniterによるPhwittrCodeIgniterによるPhwittr
CodeIgniterによるPhwittr
 
CodeIgniter 〜 2008年大躍進のPHPフレームワーク
CodeIgniter 〜 2008年大躍進のPHPフレームワークCodeIgniter 〜 2008年大躍進のPHPフレームワーク
CodeIgniter 〜 2008年大躍進のPHPフレームワーク
 

Último

NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 

Último (8)

NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 

FuelPHPでのファイルアップロード