SlideShare ist ein Scribd-Unternehmen logo
1 von 73
Zend Framework
Phwittr

                 zf-users.jp
             id:heavenshell
•

• cocoiti
Agenda
•
• Zend Framework
• Phwittr
•
•
• 1978 3
•             (                       )

• http://d.hatena.ne.jp/heavenshell
• http://coderepos.org/share/wiki/
  Committers/heavenshell
• http://openpear.org/maintainer/heavenshell/
HatenarMaps
HatenarMaps
Zend Framework
• Ver 1.0
• Zend Framework
      …(     )

•           Web
     (C      Java   C++   )
Zend Framework
Zend Framework


     Web         …
Zend Framework
•
•            FW

• OSS FW
• CakePHP   symfony   Codeigniter
Zend Framework
Zend Framework
Zend Framework

• Zend Framework
•          Hello world
Zend Framework

  • Zend Framework
  •          Hello world


Invalid controller specified (hello)
Zend Framework



   orz
Zend Framework
• CakePHP   symfony



•
•
    •
Zend Framework
• View   Smarty




    •     100% Smarty

•
Zend Framework
•                  Java    C#




• Zend Framework      XXX_Interface
    XXX_Abstract

•
Zend Framework
•
    •      (         )

•
    •
Zend Framework
•
•
    •    symfony     …

• FW
  •
•       FW
Zend Framework
•
• Zend Framework     Zend Framework
 •         symfony              …

• FW
  •
•      FW
Zend Framework
•
 •

•
Zend Framework
•

    •
•       1.5       Layout
         Smarty   Layout

•
Zend Framework
Zend Framework
Zend Framework

           Phwittr
Zend Framework

PHP
                                                     Phwittr


      PHP                                                      PHP



http://d.hatena.ne.jp/sotarok/20080422/php_framework_fight
Phwittr
Phwittr
•
    • app   configs, layouts, modules

    •
    •
Phwittr


• http://coderepos.org/share/browser/events/
  phpframework/zend_framework/trunk
•
•
•
•
•
Phwittr
•
    •

    •     DAO

• O/R         Zend_Db_Table
Phwittr
•                 Plugin

    • Zend_Auth
• Zend_Acl
 •
Phwittr
•          Zend_Auth_Adapter_DbTable



•               Salt   sha1

•        Salt

•          Junichiro
Phwittr
•

• Csrf
•
  •
Phwittr
• Layout
•
•
•
      postDispatch
Phwittr
•

•

• Zend_Db_Table
Phwittr
• Zend_Db_Statement           SQL
              /
       O/R

• Join
 • setIntegrityCheck(false)
Phwittr


• Ajax           AjaxContext

•   $ajaxContext->addActionContext('update',
    array('html', 'json'))->initContext();
Phwittr
• View Revulo_View_Phtmlc
 • <?= ?>         <?php echo
     htmlspecialchars() ?>

 •
• Zend_View_Abstract
Phwittr
•                 $this->render()

• Placeholder   Partial

  •
  •
• @hogefuga               View helper
Phwittr
•
•
•
          …

    •
Phwittr
•

•
    •         …

•
Phwittr
• ActionStack
• SidenaviController

•
       ActionStack     Sidenavi
Phwittr
• Forward     Action

•

•
Phwittr
• Ver 1.5
•           Ver 1.5

•
•
•                orz
Phwittr
•             Pear::Pager

•
     (                )

•             Magento       EC
• Zend Framework

•
• Zend_Controller_Frontend   Dispatch
•
•

•
•
•
•
•
•
• Cli
•
•
•
    validation

    http://d.hatena.ne.jp/hiro_y/20081119/1227026500
•
•

•
•
•

•
• Gene_Base::load('Service_Class_Name');
•
•

•
•   etc etc
•

•
• app   plugins, locale, views
•

• Zend_Translate
 • $translate->_(‘message’);
• ini
•
•

•
• Gene_Base::log()->write('hogefuga');
•
•                Zend_Config



• Zend_Cache_Frontend_File
•
•


• PHPSpec, Stagehand_Testrunner
DEMO
•
    …
•
    …
•   MVAC



•
•
•
•
    App

• App     array   stdClass

•         view

•
•
    •

• ActionStack   …
•
•

•
• Zend Framework


•
•
• Zend_Paginator Zend_File_Transfer
• Ver 1.8 Zend_Application
  Zend_Application_Module_Autoloader
Zend Framework Study@Tokyo vol1

Weitere ähnliche Inhalte

Was ist angesagt?

関西PHP勉強会 php5.4つまみぐい
関西PHP勉強会 php5.4つまみぐい関西PHP勉強会 php5.4つまみぐい
関西PHP勉強会 php5.4つまみぐいHisateru Tanaka
 
Zephir - A Wind of Change for writing PHP extensions
Zephir - A Wind of Change for writing PHP extensionsZephir - A Wind of Change for writing PHP extensions
Zephir - A Wind of Change for writing PHP extensionsMark Baker
 
Marrow: A Meta-Framework for Python 2.6+ and 3.1+
Marrow: A Meta-Framework for Python 2.6+ and 3.1+Marrow: A Meta-Framework for Python 2.6+ and 3.1+
Marrow: A Meta-Framework for Python 2.6+ and 3.1+ConFoo
 
Looping the Loop with SPL Iterators
Looping the Loop with SPL IteratorsLooping the Loop with SPL Iterators
Looping the Loop with SPL IteratorsMark Baker
 
Symfony2 Service Container: Inject me, my friend
Symfony2 Service Container: Inject me, my friendSymfony2 Service Container: Inject me, my friend
Symfony2 Service Container: Inject me, my friendKirill Chebunin
 
Forget about Index.php and build you applications around HTTP - PHPers Cracow
Forget about Index.php and build you applications around HTTP - PHPers CracowForget about Index.php and build you applications around HTTP - PHPers Cracow
Forget about Index.php and build you applications around HTTP - PHPers CracowKacper Gunia
 
Php 7 hhvm and co
Php 7 hhvm and coPhp 7 hhvm and co
Php 7 hhvm and coPierre Joye
 
Smolder @Silex
Smolder @SilexSmolder @Silex
Smolder @SilexJeen Lee
 
Building Web Services with Zend Framework (PHP Benelux meeting 20100713 Vliss...
Building Web Services with Zend Framework (PHP Benelux meeting 20100713 Vliss...Building Web Services with Zend Framework (PHP Benelux meeting 20100713 Vliss...
Building Web Services with Zend Framework (PHP Benelux meeting 20100713 Vliss...King Foo
 
4069180 Caching Performance Lessons From Facebook
4069180 Caching Performance Lessons From Facebook4069180 Caching Performance Lessons From Facebook
4069180 Caching Performance Lessons From Facebookguoqing75
 
Speed up your developments with Symfony2
Speed up your developments with Symfony2Speed up your developments with Symfony2
Speed up your developments with Symfony2Hugo Hamon
 
Building Modern and Secure PHP Applications – Codementor Office Hours with Be...
Building Modern and Secure PHP Applications – Codementor Office Hours with Be...Building Modern and Secure PHP Applications – Codementor Office Hours with Be...
Building Modern and Secure PHP Applications – Codementor Office Hours with Be...Arc & Codementor
 
Facebook的缓存系统
Facebook的缓存系统Facebook的缓存系统
Facebook的缓存系统yiditushe
 
Advanced symfony Techniques
Advanced symfony TechniquesAdvanced symfony Techniques
Advanced symfony TechniquesKris Wallsmith
 
I, For One, Welcome Our New Perl6 Overlords
I, For One, Welcome Our New Perl6 OverlordsI, For One, Welcome Our New Perl6 Overlords
I, For One, Welcome Our New Perl6 Overlordsheumann
 
Just-In-Time Compiler in PHP 8
Just-In-Time Compiler in PHP 8Just-In-Time Compiler in PHP 8
Just-In-Time Compiler in PHP 8Nikita Popov
 
Scaling Symfony2 apps with RabbitMQ - Symfony UK Meetup
Scaling Symfony2 apps with RabbitMQ - Symfony UK MeetupScaling Symfony2 apps with RabbitMQ - Symfony UK Meetup
Scaling Symfony2 apps with RabbitMQ - Symfony UK MeetupKacper Gunia
 

Was ist angesagt? (20)

関西PHP勉強会 php5.4つまみぐい
関西PHP勉強会 php5.4つまみぐい関西PHP勉強会 php5.4つまみぐい
関西PHP勉強会 php5.4つまみぐい
 
Zephir - A Wind of Change for writing PHP extensions
Zephir - A Wind of Change for writing PHP extensionsZephir - A Wind of Change for writing PHP extensions
Zephir - A Wind of Change for writing PHP extensions
 
Marrow: A Meta-Framework for Python 2.6+ and 3.1+
Marrow: A Meta-Framework for Python 2.6+ and 3.1+Marrow: A Meta-Framework for Python 2.6+ and 3.1+
Marrow: A Meta-Framework for Python 2.6+ and 3.1+
 
Looping the Loop with SPL Iterators
Looping the Loop with SPL IteratorsLooping the Loop with SPL Iterators
Looping the Loop with SPL Iterators
 
Symfony2 Service Container: Inject me, my friend
Symfony2 Service Container: Inject me, my friendSymfony2 Service Container: Inject me, my friend
Symfony2 Service Container: Inject me, my friend
 
Forget about Index.php and build you applications around HTTP - PHPers Cracow
Forget about Index.php and build you applications around HTTP - PHPers CracowForget about Index.php and build you applications around HTTP - PHPers Cracow
Forget about Index.php and build you applications around HTTP - PHPers Cracow
 
Php 7 hhvm and co
Php 7 hhvm and coPhp 7 hhvm and co
Php 7 hhvm and co
 
Smolder @Silex
Smolder @SilexSmolder @Silex
Smolder @Silex
 
Building Web Services with Zend Framework (PHP Benelux meeting 20100713 Vliss...
Building Web Services with Zend Framework (PHP Benelux meeting 20100713 Vliss...Building Web Services with Zend Framework (PHP Benelux meeting 20100713 Vliss...
Building Web Services with Zend Framework (PHP Benelux meeting 20100713 Vliss...
 
4069180 Caching Performance Lessons From Facebook
4069180 Caching Performance Lessons From Facebook4069180 Caching Performance Lessons From Facebook
4069180 Caching Performance Lessons From Facebook
 
Speed up your developments with Symfony2
Speed up your developments with Symfony2Speed up your developments with Symfony2
Speed up your developments with Symfony2
 
Building Modern and Secure PHP Applications – Codementor Office Hours with Be...
Building Modern and Secure PHP Applications – Codementor Office Hours with Be...Building Modern and Secure PHP Applications – Codementor Office Hours with Be...
Building Modern and Secure PHP Applications – Codementor Office Hours with Be...
 
Php functions
Php functionsPhp functions
Php functions
 
Facebook的缓存系统
Facebook的缓存系统Facebook的缓存系统
Facebook的缓存系统
 
Advanced symfony Techniques
Advanced symfony TechniquesAdvanced symfony Techniques
Advanced symfony Techniques
 
I, For One, Welcome Our New Perl6 Overlords
I, For One, Welcome Our New Perl6 OverlordsI, For One, Welcome Our New Perl6 Overlords
I, For One, Welcome Our New Perl6 Overlords
 
Php security3895
Php security3895Php security3895
Php security3895
 
Just-In-Time Compiler in PHP 8
Just-In-Time Compiler in PHP 8Just-In-Time Compiler in PHP 8
Just-In-Time Compiler in PHP 8
 
Introduction to Flask Micro Framework
Introduction to Flask Micro FrameworkIntroduction to Flask Micro Framework
Introduction to Flask Micro Framework
 
Scaling Symfony2 apps with RabbitMQ - Symfony UK Meetup
Scaling Symfony2 apps with RabbitMQ - Symfony UK MeetupScaling Symfony2 apps with RabbitMQ - Symfony UK Meetup
Scaling Symfony2 apps with RabbitMQ - Symfony UK Meetup
 

Ähnlich wie Zend Framework Study@Tokyo vol1

Warden Introduction
Warden IntroductionWarden Introduction
Warden Introductionhassox
 
Streamlining Your Applications with Web Frameworks
Streamlining Your Applications with Web FrameworksStreamlining Your Applications with Web Frameworks
Streamlining Your Applications with Web Frameworksguestf7bc30
 
Apache and PHP: Why httpd.conf is your new BFF!
Apache and PHP: Why httpd.conf is your new BFF!Apache and PHP: Why httpd.conf is your new BFF!
Apache and PHP: Why httpd.conf is your new BFF!Jeff Jones
 
Prepare for PHP Test Fest 2009
Prepare for PHP Test Fest 2009Prepare for PHP Test Fest 2009
Prepare for PHP Test Fest 2009PHPBelgium
 
第1回PHP拡張勉強会
第1回PHP拡張勉強会第1回PHP拡張勉強会
第1回PHP拡張勉強会Ippei Ogiwara
 
2007 0822 Antelope Php
2007 0822 Antelope Php2007 0822 Antelope Php
2007 0822 Antelope Phpgmaxsonic
 
글로벌 CDN과 동적 웹 가속 기술 (Global CDN & Dynamic Web Acceleration) - FNet Grand Conf...
글로벌 CDN과 동적 웹 가속 기술 (Global CDN & Dynamic Web Acceleration) - FNet Grand Conf...글로벌 CDN과 동적 웹 가속 기술 (Global CDN & Dynamic Web Acceleration) - FNet Grand Conf...
글로벌 CDN과 동적 웹 가속 기술 (Global CDN & Dynamic Web Acceleration) - FNet Grand Conf...Junho Choi
 
Symfony 2.0
Symfony 2.0Symfony 2.0
Symfony 2.0GrUSP
 
Openshift: Deployments for the rest of us
Openshift: Deployments for the rest of usOpenshift: Deployments for the rest of us
Openshift: Deployments for the rest of usAnurag Patel
 
Enterprise PHP Development - ZendCon 2008
Enterprise PHP Development - ZendCon 2008Enterprise PHP Development - ZendCon 2008
Enterprise PHP Development - ZendCon 2008Ivo Jansch
 
Hacking Movable Type Training - Day 1
Hacking Movable Type Training - Day 1Hacking Movable Type Training - Day 1
Hacking Movable Type Training - Day 1Byrne Reese
 
Automated Performance Testing With J Meter And Maven
Automated  Performance  Testing With  J Meter And  MavenAutomated  Performance  Testing With  J Meter And  Maven
Automated Performance Testing With J Meter And MavenPerconaPerformance
 
Ajax Tutorial
Ajax TutorialAjax Tutorial
Ajax Tutorialoscon2007
 
Артем Маркушев - JavaScript
Артем Маркушев - JavaScriptАртем Маркушев - JavaScript
Артем Маркушев - JavaScriptDataArt
 
[Muir] Seam 2 in practice
[Muir] Seam 2 in practice[Muir] Seam 2 in practice
[Muir] Seam 2 in practicejavablend
 
BADCamp 2008 DB Sync
BADCamp 2008 DB SyncBADCamp 2008 DB Sync
BADCamp 2008 DB SyncShaun Haber
 
An Introduction To Android
An Introduction To AndroidAn Introduction To Android
An Introduction To Androidnatdefreitas
 
symfony: An Open-Source Framework for Professionals (Dutch Php Conference 2008)
symfony: An Open-Source Framework for Professionals (Dutch Php Conference 2008)symfony: An Open-Source Framework for Professionals (Dutch Php Conference 2008)
symfony: An Open-Source Framework for Professionals (Dutch Php Conference 2008)Fabien Potencier
 

Ähnlich wie Zend Framework Study@Tokyo vol1 (20)

Warden Introduction
Warden IntroductionWarden Introduction
Warden Introduction
 
Becoming A Php Ninja
Becoming A Php NinjaBecoming A Php Ninja
Becoming A Php Ninja
 
Streamlining Your Applications with Web Frameworks
Streamlining Your Applications with Web FrameworksStreamlining Your Applications with Web Frameworks
Streamlining Your Applications with Web Frameworks
 
Apache and PHP: Why httpd.conf is your new BFF!
Apache and PHP: Why httpd.conf is your new BFF!Apache and PHP: Why httpd.conf is your new BFF!
Apache and PHP: Why httpd.conf is your new BFF!
 
Prepare for PHP Test Fest 2009
Prepare for PHP Test Fest 2009Prepare for PHP Test Fest 2009
Prepare for PHP Test Fest 2009
 
第1回PHP拡張勉強会
第1回PHP拡張勉強会第1回PHP拡張勉強会
第1回PHP拡張勉強会
 
2007 0822 Antelope Php
2007 0822 Antelope Php2007 0822 Antelope Php
2007 0822 Antelope Php
 
글로벌 CDN과 동적 웹 가속 기술 (Global CDN & Dynamic Web Acceleration) - FNet Grand Conf...
글로벌 CDN과 동적 웹 가속 기술 (Global CDN & Dynamic Web Acceleration) - FNet Grand Conf...글로벌 CDN과 동적 웹 가속 기술 (Global CDN & Dynamic Web Acceleration) - FNet Grand Conf...
글로벌 CDN과 동적 웹 가속 기술 (Global CDN & Dynamic Web Acceleration) - FNet Grand Conf...
 
Symfony 2.0
Symfony 2.0Symfony 2.0
Symfony 2.0
 
Openshift: Deployments for the rest of us
Openshift: Deployments for the rest of usOpenshift: Deployments for the rest of us
Openshift: Deployments for the rest of us
 
Enterprise PHP Development - ZendCon 2008
Enterprise PHP Development - ZendCon 2008Enterprise PHP Development - ZendCon 2008
Enterprise PHP Development - ZendCon 2008
 
Hacking Movable Type Training - Day 1
Hacking Movable Type Training - Day 1Hacking Movable Type Training - Day 1
Hacking Movable Type Training - Day 1
 
Automated Performance Testing With J Meter And Maven
Automated  Performance  Testing With  J Meter And  MavenAutomated  Performance  Testing With  J Meter And  Maven
Automated Performance Testing With J Meter And Maven
 
Ajax Tutorial
Ajax TutorialAjax Tutorial
Ajax Tutorial
 
Артем Маркушев - JavaScript
Артем Маркушев - JavaScriptАртем Маркушев - JavaScript
Артем Маркушев - JavaScript
 
[Muir] Seam 2 in practice
[Muir] Seam 2 in practice[Muir] Seam 2 in practice
[Muir] Seam 2 in practice
 
BADCamp 2008 DB Sync
BADCamp 2008 DB SyncBADCamp 2008 DB Sync
BADCamp 2008 DB Sync
 
An Introduction To Android
An Introduction To AndroidAn Introduction To Android
An Introduction To Android
 
symfony: An Open-Source Framework for Professionals (Dutch Php Conference 2008)
symfony: An Open-Source Framework for Professionals (Dutch Php Conference 2008)symfony: An Open-Source Framework for Professionals (Dutch Php Conference 2008)
symfony: An Open-Source Framework for Professionals (Dutch Php Conference 2008)
 
Pc54
Pc54Pc54
Pc54
 

Zend Framework Study@Tokyo vol1

Hinweis der Redaktion