Análise
Frameworks PHP
ZF2 CodeIgniter Yii
Visão geral
ZEND FRAMEWORK 2
Melhores práticas orientadas a objeto, PHP 5.3. Base de código ágil rigorosamente testados. Zend Framework é
focado na construção mais segura, confiável e moderno aplicações Web 2.0, web services e consumir APIs
amplamente disponíveis de fornecedores líderes como Google, Amazon, Yahoo!, Flickr. Podendo contar com uma
equipe de ferramentas que contribui para uma credibilidade e potencial no produto, tais como o Zend Server é um
servidor de aplicações web para executar e gerenciar aplicações PHP. Monitora aplicações, faz diagnóstico de
problemas, otimiza e faz caching das aplicações, o Zend Plataform é um servidor web para monitorar e otimizar o
desempenho de aplicações PHP e Zend Studio é um IDE para PHP.
CODEIGNITER
CodeIgniter permite que você mantenha o foco em seu projeto minimizando a quantidade de código necessário para
uma dada tarefa. Seu objetivo é permitir que você desenvolva projetos mais rapidamente do que se você estivesse
escrevendo código a partir do zero, através de um conjunto de bibliotecas para as tarefas mais comuns necessárias,
bem como uma interface simples e estrutura lógica para acessar essas bibliotecas. Facilidade no uso, pode se dizer
que seria sua principal vantagem dos demais frameworks.
YII
Yii é um framework PHP5 de alta performance baseado em componentes para desenvolvimento de aplicações Web de
grande escala, promovendo projeto limpos e incentivo desenvolvimento rápido. De MVC, DAO / ActiveRecord, widgets,
caching, Templates, Validação, RBAC hierárquico, Ajax, Auth Module, Módulos, serviços Web, a tematização, I18N e
L10N, Yii fornece quase todos os recursos necessários para o desenvolvimento de aplicativos Web 2.0 de hoje.Ele
vem embalado com ferramentas para ajudar a testar e depurar sua aplicação, e tem uma documentação clara e
abrangente.
Recursos
Framework PHP5 MVC Multiple
DB's
ORM DB Objects Templates Caching Validation Ajax Auth
Module
Modules
Zend
CI
- - -
Yii
MVC : Configuração Model-View-Controller.
Multiple DB’s : Suporte múltiplos bancos de dados, sem ter que mudar nada.
ORM : Mapeador objeto-registro, geralmente uma implementação do ActiveRecord.
DB Objects : Indica se o framework inclui outros objetos de banco de dados, como uma TableGateWay.
Templates : Indica se o framework tem um modelo de templates embutido.
Caching : Indica se o framework inclui um objeto de cache ou de alguma forma outra forma de cache.
Validation: Indica se o quadro tem uma validação embutida ou componente de filtragem.
Ajax : Suporte embutido para o Ajax.
Auth Module : Indica se o framework tem um módulo embutido para lidar com a autenticação do usuário.
Módulos : Indica se o framework tem outros módulos, como um RSS feed parser, módulo de PDF ou qualquer outra coisa (útil).
Comunidades
ZEND
Blogs dos contribuintes, lista de e-mail do participantes brasileiro no zend, disponibilidade de
download da API, twitter, documentação no github. Comunidades brasileiras ativas.
CI
Fóruns, documentação e wiki no Github, chats. Comunidade Codeigniter Brasil, diversidade de blogs
para suporte do framework, guia de desenvolvimento.
Yii
Comunidades ativas com bastante diversidade, fóruns, chats, wiki, extensões, news, artigos,
facebook, twitter e linked. Principais comunidades ficam no próprio site do Yii, fóruns por
nacionalidade, assuntos e etc.
Suporte a Bancos SQL/NO SQL
ZEND
Firebird, MariaDB, MySql,
IMB DB2, Microsoft SQL Server,
Oracle, PostgreSQL, SQLite.
Conexão a múltiplos bancos
NoSql Zend_Couch, Zend_Nosql_Mongo, suporte e
documentado.
CI
Sqlite (Default),
Mysql,
PostgreSQL,
Odbc.
Conexão a múltiplos banco.
Não a suporte para banco NOSQL.
YII
MySQL 4.1 ou maior,
PostgreSQL 7.3 ou maior,
SQLite 2 e 3,
Microsoft SQL Server 2000 ou maior,
Oracle.
Active Record.
No sql yiimongodbsuite , banco nosql Mongodb.
Conexão a múltiplos banco.
Aderência ao Bootstrap
ZEND
Zend Framework 2 , ja vem por padrão, pronto para uso.
CI
Projeto com o bootstrap, pronto para uso.
https://github.com/sjlu/CodeIgniter-Bootstrap
YII
Extensão Yii-Bootstrap, com documentação devido a adaptação ao framework.
http://www.yiiframework.com/extension/yii-bootstrap/
Desenvolvimento
Facilidade de geração de código x liberdade de alteração para atender a requisitos
ZEND
Bem definido devido ao MVC, Módulos, uso de Componentes, fazendo com que se tenha baixa dependência entre
eles. A partir do processo de instalação e configuração até o desenvolvimento das primeiras aplicações é necessário
grau de conhecimento básico em programação ou mesmos outros frameworks.
CI
Uso do MVC facilitando a estruturação do código, fácil instalação, uso de recursos necessário para uma aplicação,
fonte flexível a mudanças, com todo suporte a documentação.
YII
Padrão MVC, Modular, comandos de geração de projetos Yiic, crud Gii, modo de DEBUG YII_DEBUG. Otimizando
todo um desenvolvimento web, com as principais operação básicas. Fonte de fácil compreensão para alterações e
novas funcionalidades.o todo um desenvolvimento web, com as principais operação básicas. Fonte de fácil
compreensão para alterações e novas funcionalidades.
Sites / Sistemas que utilizam
ZEND
BBC - http://www.bbc.co.uk/
Serpro - https://www.serpro.gov.br/
IBM - http://www.ibm.com/us/en/
Magento - http://www.magentocommerce.com/
NASA - http://www.nasa.gov/
CI
Argo Host - http://www.argohost.net/
Orotoro - http://orotoro.com/
Media Root - http://www.mediaroost.com/
Ukulima - http://ukulima.net/
At&T Center - http://www.attcenter.com/
YII
Stay - http://www.stay.com/
Ashe Avenue- http://www.asheavenue.com/ (Dell, Intel, Asics, Diesel, Mtv)
International Student - http://www.internationalstudent.com/
Piclyf - http://piclyf.com/
Nutrition IX - http://www.nutritionix.com/
Suporte a HA utilizando sessão e/ou Banco
ou FS Compartilhado
Zend
Suporte Multi-Server no Zend Server
Alta disponibilidade e escalabilidade para aplicações PHP
Quando a demanda em suas aplicações PHP requer estendê-los entre vários servidores, Zend Server pode garantir a
alta disponibilidade e melhor escalabilidade. Ao adicionar as capacidades de gerenciamento de grupo do Zend Server,
as equipes de TI podem monitorar e gerenciar centralmente várias instâncias Zend Server, tanto local como na nuvem.
High Availability
Agrupamento Session oferece uma solução escalável failover integrado rápido, para suas aplicações PHP, com
gerenciamento de grupo do Zend Server, sessões de usuário são sempre mantidos em vários servidores
CI
Não encontrei resposta coerente da parte do framework CodeIgniter.
YII
Não encontrei resposta coerente da parte do Yii Frameworks.
Diretórios e Instalação CI
Gerar projeto ignite basta fazer o download do
source no site, colar onde o apache interpreta
suas paginas PHP.
Sistema de pastas:
application/views/
application/controller/
application/model/
application/config/routes.txt
application/config/database.txt
ROUTES
1) $route[url no browser] = 'cqualquer/view/$1'.
2) cqualquer classe controller a ser chamada (pelo nome da CLASSE e não do
arquivo), view é a função do controller e $1 um parâmetro.
3) formato da rota pode ser representado por:
Wildcards:
$route['product/:num']="catalog/product_lookup"
Expressões Regulares:
$route['products/([a-z]+)/(d+)'] = "$1/id_$2";
4) Prestar atenção na ordem de precedência (do específico ao mais genérico)
ex:
$route['qualquer'] = 'cqualquer/view';
$route['(:any)'] = 'pages2/testeme/$1';
$route['default_controller'] = 'pages2/view';
CONTROLLER
1) nome da classe não é case sensitive.
class cqualquer extends CI_Controller {
public function view($page = 'qualquer')
{
if ( ! file_exists('application/views/paginas/'.$page.'.php'))
{
show_404();
}
$data['title'] = ucfirst($page);
$this->load->view('templates/header', $data);
$this->load->view('paginas/'.$page, $data);
$this->load->view('templates/footer', $data);
}
}
MODEL
class News_model extends CI_Model {
public function __construct() {
$this->load->database();
}
public function get_news() {
$query = $this->db->get('news');
return $query->result_array();
}
}
(Na view)
<?php foreach ($news as $news_item): ?>
<h2><?php echo $news_item['title'] ?></h2>
<div id="main">
<?php echo $news_item['text'] ?>
</div>
<p><a href="news/<?php echo $news_item['slug'] ?>">View article</a></p>
<?php endforeach ?>
(No controller)
//__construct vai chamar o construtor do seu parente (CI_Controller)
public function __construct(){
parent::__construct();
//carrega a classe model "news_model" e seus métodos para ser usado durante a execução.
$this->load->model('news_model');
}
public function index(){
$data['news'] = $this->news_model->get_news();
$data['title'] = 'News archive';
$this->load->view('templates/header', $data);
$this->load->view('news/index', $data);
$this->load->view('templates/footer');
}
DATABASE
(application/config/database.txt)
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root@localhost';
$db['default']['password'] = '';
$db['default']['database'] = 'boraignite';
$db['default']['dbdriver'] = 'mysql';
Instalação Yii
A instalação do Yii envolve principalmente, as duas etapas seguintes:
1. Fazer o Download do Yii Framework em yiiframework.com.
2. Descompactar o arquivo do Yii em um diretório acessível a Web.
3. Execute o yiic pela linha de comando, como no exemplo a seguir:
% YiiRoot/framework/yiic webapp apache/www/demo_yii
Diretórios Yii Parte I
demo_yii/
index.php Script de entrada da aplicação Web
index-test.php Script de entrada para os testes funcionais
assets/ Contém arquivos de recurso publicados
css/ Contém arquivos CSS
images/ Contém arquivos de imagem
themes/ Contém temas da aplicação
protected/ Contém arquivos protegidos da aplicação
yiic Script de linha de comando yiic
yiic.bat Script de linha de comando yiic para o Windows
yiic.php Script PHP de linha de comando yiic
commands/ Contém comandos 'yiic' customizados
shell/ Contém comandos 'yiic shell' customizados
components/ Contém componentes reutilizáveis do usuário
Controller.php A classe padrão para todos os controles
UserIdentity.php A classe 'UserIdentity' usada nas autenticações
config/ Contém arquivos de configurações
console.php Configuração da aplicação console
main.php Configuração da aplicação Web
text.php Configuração para os testes funcionais
controllers/ Contém arquivos das classes de controle
SiteController.php Classes de controle padrão
Diretórios Yii Parte II
data/ Contém exemplos de banco de dados
schema.mysql.sql Esquemas de BD com o banco de amostra em MySQL
schema.sqlite.sql Esquemas de BD com o banco de amostra em SQLite
testdrive.db Arquivo do banco de dados de amostra do SQLite
extensions/ Contém extensões de terceiros
messages/ Contém mensagens traduzidas
models/ Contém arquivos das classes de modelo
LoginForm.php Modelo do formulário para a ação 'login'
ContactForm.php Modelo do formulário para a ação 'contact'
runtime/ Contém arquivos gerados temporariamente
tests/ Contém scripts para os testes
views/ Contém arquivos de visão dos controles e layouts
layouts/ Contém arquivos de visão do layout
main.php O layout padrão para todas as páginas
column1.php O layout para páginas com coluna única
column2.php O layout para páginas com duas colunas
site/ Contém arquivos de visão para o controle 'site'
pages/ Contém páginas "estática"
about.php A visão para a página "about"
contact.php Visão para a ação 'contact'
error.php Visão para a ação 'error' (exibindo erros externos)
index.php Visão para a ação 'index'
login.php Visão para a ação 'login'
Instalação ZF 2
cd apache/htdocs/www/
git clone git://github.com/zendframework/ZendSkeletonApplication.git
cd ZendSkeletonApplication
# php composer.phar self-update
# php composer.phar install
Ferramenta para gerenciamento de dependência em PHP. Ele permite que você declare as bibliotecas dependentes que seu projeto precisa e
ele irá instalar em seu projeto para você. O Composer tem como base as bibliotecas esse repositório: Packagist.
Diretórios ZF2
Usa PHPUnit para testar o código e Travis CI como
serviço de integração continua
O Zend Framework 2 não é compatível com o Zend
Framework 1, na verdade ele é até parecido em alguns
pontos na estrutura das pastas pois ambos são MVC.
A grande novidade é a pasta VENDOR que será utilizada
para carregar as bibliotecas adicionais ou
complementares (mais ou menos como funcionava a
library antes).
Ferramentas e Componentes
ZFTool
Ferramenta usada para facilitar a gerencia de projetos do Zend Framework.
Doctrine
Fornece diversas bibliotecas com foco em persistência de dados.
ZendPHPUnit
Componente para teste unitário (TDD).
ZendPaginator
Componente para paginação do sistema.
ZendAuthentication
componente fornece uma API para autenticação e inclui adaptadores concretos de autenticação para cenários de caso
de uso comum
ZendAuthenticationValidator
Componente de validação
IReport
iReport é, designer de relatório de fonte aberta livre para JasperReports e JasperReports Server. criar layouts muito sofisticados, contendo gráficos,
imagens, sub-relatórios, tabelas cruzadas e muito mais. Acessar seus dados através de JDBC, TableModels, JavaBeans, XML, Hibernate, CSV, e fontes
personalizadas. Em seguida, publicar seus relatórios como PDF, RTF, XML, XLS, CSV, HTML, XHTML, textos, DOCX ou OpenOffice.
IReport Ciclo de Vida
PHP JasperXML
Este projeto (Na verdade, é uma classe), que converte o xml gerado pelo IReports para relatório web em php
facilmente.
- Desenvolver relatório PDF com iReport, que é rápido, flexível e eficaz
- Rodar nativamente em PHP
- Integrar ao seu projeto existente facilmente
- Você pode enviar qualquer parâmetro em seu relatório PDF / EXCEL facilmente, seja com GET ou POST
- Código aberto, você pode alterar a biblioteca mesmo
Rankings e Gráficos
Rankings e Gráficos
http://webrevisions.com/tutorials/php-framework-the-best-php-framework-for-2013/#.UcSLD_m1FPM
http://www.phpframeworks.com/top-10-php-frameworks/
http://socialcompare.com/en/comparison/php-frameworks-comparison
http://davidjconnelly.wordpress.com/2011/07/03/the-best-php-framework-of-2011/
http://bharat-c-solanki.blogspot.com.br/2012/04/top-10-ranking-php-frameworks.html
http://php.dzone.com/news/top-10-php-frameworks
http://www.zfort.com/blog/top-5-php-frameworks-infographic/
- Google Trends ( Pesquisa de Interesse Mundial )
http://www.google.com/trends/explore#q=yii%2C%20CodeIgniter%2C%20Zend%20Framework&cmpt=
- Google Trends ( Pesquisa de Interesse Brasil )
http://www.google.com/trends/explore#q=yii%2C%20CodeIgniter%2C%20Zend%20Framework&geo=BR&cmpt=q

Analise frameworks php

  • 1.
  • 2.
    Visão geral ZEND FRAMEWORK2 Melhores práticas orientadas a objeto, PHP 5.3. Base de código ágil rigorosamente testados. Zend Framework é focado na construção mais segura, confiável e moderno aplicações Web 2.0, web services e consumir APIs amplamente disponíveis de fornecedores líderes como Google, Amazon, Yahoo!, Flickr. Podendo contar com uma equipe de ferramentas que contribui para uma credibilidade e potencial no produto, tais como o Zend Server é um servidor de aplicações web para executar e gerenciar aplicações PHP. Monitora aplicações, faz diagnóstico de problemas, otimiza e faz caching das aplicações, o Zend Plataform é um servidor web para monitorar e otimizar o desempenho de aplicações PHP e Zend Studio é um IDE para PHP. CODEIGNITER CodeIgniter permite que você mantenha o foco em seu projeto minimizando a quantidade de código necessário para uma dada tarefa. Seu objetivo é permitir que você desenvolva projetos mais rapidamente do que se você estivesse escrevendo código a partir do zero, através de um conjunto de bibliotecas para as tarefas mais comuns necessárias, bem como uma interface simples e estrutura lógica para acessar essas bibliotecas. Facilidade no uso, pode se dizer que seria sua principal vantagem dos demais frameworks. YII Yii é um framework PHP5 de alta performance baseado em componentes para desenvolvimento de aplicações Web de grande escala, promovendo projeto limpos e incentivo desenvolvimento rápido. De MVC, DAO / ActiveRecord, widgets, caching, Templates, Validação, RBAC hierárquico, Ajax, Auth Module, Módulos, serviços Web, a tematização, I18N e L10N, Yii fornece quase todos os recursos necessários para o desenvolvimento de aplicativos Web 2.0 de hoje.Ele vem embalado com ferramentas para ajudar a testar e depurar sua aplicação, e tem uma documentação clara e abrangente.
  • 3.
    Recursos Framework PHP5 MVCMultiple DB's ORM DB Objects Templates Caching Validation Ajax Auth Module Modules Zend CI - - - Yii MVC : Configuração Model-View-Controller. Multiple DB’s : Suporte múltiplos bancos de dados, sem ter que mudar nada. ORM : Mapeador objeto-registro, geralmente uma implementação do ActiveRecord. DB Objects : Indica se o framework inclui outros objetos de banco de dados, como uma TableGateWay. Templates : Indica se o framework tem um modelo de templates embutido. Caching : Indica se o framework inclui um objeto de cache ou de alguma forma outra forma de cache. Validation: Indica se o quadro tem uma validação embutida ou componente de filtragem. Ajax : Suporte embutido para o Ajax. Auth Module : Indica se o framework tem um módulo embutido para lidar com a autenticação do usuário. Módulos : Indica se o framework tem outros módulos, como um RSS feed parser, módulo de PDF ou qualquer outra coisa (útil).
  • 4.
    Comunidades ZEND Blogs dos contribuintes,lista de e-mail do participantes brasileiro no zend, disponibilidade de download da API, twitter, documentação no github. Comunidades brasileiras ativas. CI Fóruns, documentação e wiki no Github, chats. Comunidade Codeigniter Brasil, diversidade de blogs para suporte do framework, guia de desenvolvimento. Yii Comunidades ativas com bastante diversidade, fóruns, chats, wiki, extensões, news, artigos, facebook, twitter e linked. Principais comunidades ficam no próprio site do Yii, fóruns por nacionalidade, assuntos e etc.
  • 5.
    Suporte a BancosSQL/NO SQL ZEND Firebird, MariaDB, MySql, IMB DB2, Microsoft SQL Server, Oracle, PostgreSQL, SQLite. Conexão a múltiplos bancos NoSql Zend_Couch, Zend_Nosql_Mongo, suporte e documentado. CI Sqlite (Default), Mysql, PostgreSQL, Odbc. Conexão a múltiplos banco. Não a suporte para banco NOSQL. YII MySQL 4.1 ou maior, PostgreSQL 7.3 ou maior, SQLite 2 e 3, Microsoft SQL Server 2000 ou maior, Oracle. Active Record. No sql yiimongodbsuite , banco nosql Mongodb. Conexão a múltiplos banco.
  • 6.
    Aderência ao Bootstrap ZEND ZendFramework 2 , ja vem por padrão, pronto para uso. CI Projeto com o bootstrap, pronto para uso. https://github.com/sjlu/CodeIgniter-Bootstrap YII Extensão Yii-Bootstrap, com documentação devido a adaptação ao framework. http://www.yiiframework.com/extension/yii-bootstrap/
  • 7.
    Desenvolvimento Facilidade de geraçãode código x liberdade de alteração para atender a requisitos ZEND Bem definido devido ao MVC, Módulos, uso de Componentes, fazendo com que se tenha baixa dependência entre eles. A partir do processo de instalação e configuração até o desenvolvimento das primeiras aplicações é necessário grau de conhecimento básico em programação ou mesmos outros frameworks. CI Uso do MVC facilitando a estruturação do código, fácil instalação, uso de recursos necessário para uma aplicação, fonte flexível a mudanças, com todo suporte a documentação. YII Padrão MVC, Modular, comandos de geração de projetos Yiic, crud Gii, modo de DEBUG YII_DEBUG. Otimizando todo um desenvolvimento web, com as principais operação básicas. Fonte de fácil compreensão para alterações e novas funcionalidades.o todo um desenvolvimento web, com as principais operação básicas. Fonte de fácil compreensão para alterações e novas funcionalidades.
  • 8.
    Sites / Sistemasque utilizam ZEND BBC - http://www.bbc.co.uk/ Serpro - https://www.serpro.gov.br/ IBM - http://www.ibm.com/us/en/ Magento - http://www.magentocommerce.com/ NASA - http://www.nasa.gov/ CI Argo Host - http://www.argohost.net/ Orotoro - http://orotoro.com/ Media Root - http://www.mediaroost.com/ Ukulima - http://ukulima.net/ At&T Center - http://www.attcenter.com/ YII Stay - http://www.stay.com/ Ashe Avenue- http://www.asheavenue.com/ (Dell, Intel, Asics, Diesel, Mtv) International Student - http://www.internationalstudent.com/ Piclyf - http://piclyf.com/ Nutrition IX - http://www.nutritionix.com/
  • 9.
    Suporte a HAutilizando sessão e/ou Banco ou FS Compartilhado Zend Suporte Multi-Server no Zend Server Alta disponibilidade e escalabilidade para aplicações PHP Quando a demanda em suas aplicações PHP requer estendê-los entre vários servidores, Zend Server pode garantir a alta disponibilidade e melhor escalabilidade. Ao adicionar as capacidades de gerenciamento de grupo do Zend Server, as equipes de TI podem monitorar e gerenciar centralmente várias instâncias Zend Server, tanto local como na nuvem. High Availability Agrupamento Session oferece uma solução escalável failover integrado rápido, para suas aplicações PHP, com gerenciamento de grupo do Zend Server, sessões de usuário são sempre mantidos em vários servidores CI Não encontrei resposta coerente da parte do framework CodeIgniter. YII Não encontrei resposta coerente da parte do Yii Frameworks.
  • 10.
    Diretórios e InstalaçãoCI Gerar projeto ignite basta fazer o download do source no site, colar onde o apache interpreta suas paginas PHP. Sistema de pastas: application/views/ application/controller/ application/model/ application/config/routes.txt application/config/database.txt
  • 11.
    ROUTES 1) $route[url nobrowser] = 'cqualquer/view/$1'. 2) cqualquer classe controller a ser chamada (pelo nome da CLASSE e não do arquivo), view é a função do controller e $1 um parâmetro. 3) formato da rota pode ser representado por: Wildcards: $route['product/:num']="catalog/product_lookup" Expressões Regulares: $route['products/([a-z]+)/(d+)'] = "$1/id_$2"; 4) Prestar atenção na ordem de precedência (do específico ao mais genérico) ex: $route['qualquer'] = 'cqualquer/view'; $route['(:any)'] = 'pages2/testeme/$1'; $route['default_controller'] = 'pages2/view';
  • 12.
    CONTROLLER 1) nome daclasse não é case sensitive. class cqualquer extends CI_Controller { public function view($page = 'qualquer') { if ( ! file_exists('application/views/paginas/'.$page.'.php')) { show_404(); } $data['title'] = ucfirst($page); $this->load->view('templates/header', $data); $this->load->view('paginas/'.$page, $data); $this->load->view('templates/footer', $data); } }
  • 13.
    MODEL class News_model extendsCI_Model { public function __construct() { $this->load->database(); } public function get_news() { $query = $this->db->get('news'); return $query->result_array(); } } (Na view) <?php foreach ($news as $news_item): ?> <h2><?php echo $news_item['title'] ?></h2> <div id="main"> <?php echo $news_item['text'] ?> </div> <p><a href="news/<?php echo $news_item['slug'] ?>">View article</a></p> <?php endforeach ?>
  • 14.
    (No controller) //__construct vaichamar o construtor do seu parente (CI_Controller) public function __construct(){ parent::__construct(); //carrega a classe model "news_model" e seus métodos para ser usado durante a execução. $this->load->model('news_model'); } public function index(){ $data['news'] = $this->news_model->get_news(); $data['title'] = 'News archive'; $this->load->view('templates/header', $data); $this->load->view('news/index', $data); $this->load->view('templates/footer'); }
  • 15.
    DATABASE (application/config/database.txt) $db['default']['hostname'] = 'localhost'; $db['default']['username']= 'root@localhost'; $db['default']['password'] = ''; $db['default']['database'] = 'boraignite'; $db['default']['dbdriver'] = 'mysql';
  • 16.
    Instalação Yii A instalaçãodo Yii envolve principalmente, as duas etapas seguintes: 1. Fazer o Download do Yii Framework em yiiframework.com. 2. Descompactar o arquivo do Yii em um diretório acessível a Web. 3. Execute o yiic pela linha de comando, como no exemplo a seguir: % YiiRoot/framework/yiic webapp apache/www/demo_yii
  • 17.
    Diretórios Yii ParteI demo_yii/ index.php Script de entrada da aplicação Web index-test.php Script de entrada para os testes funcionais assets/ Contém arquivos de recurso publicados css/ Contém arquivos CSS images/ Contém arquivos de imagem themes/ Contém temas da aplicação protected/ Contém arquivos protegidos da aplicação yiic Script de linha de comando yiic yiic.bat Script de linha de comando yiic para o Windows yiic.php Script PHP de linha de comando yiic commands/ Contém comandos 'yiic' customizados shell/ Contém comandos 'yiic shell' customizados components/ Contém componentes reutilizáveis do usuário Controller.php A classe padrão para todos os controles UserIdentity.php A classe 'UserIdentity' usada nas autenticações config/ Contém arquivos de configurações console.php Configuração da aplicação console main.php Configuração da aplicação Web text.php Configuração para os testes funcionais controllers/ Contém arquivos das classes de controle SiteController.php Classes de controle padrão
  • 18.
    Diretórios Yii ParteII data/ Contém exemplos de banco de dados schema.mysql.sql Esquemas de BD com o banco de amostra em MySQL schema.sqlite.sql Esquemas de BD com o banco de amostra em SQLite testdrive.db Arquivo do banco de dados de amostra do SQLite extensions/ Contém extensões de terceiros messages/ Contém mensagens traduzidas models/ Contém arquivos das classes de modelo LoginForm.php Modelo do formulário para a ação 'login' ContactForm.php Modelo do formulário para a ação 'contact' runtime/ Contém arquivos gerados temporariamente tests/ Contém scripts para os testes views/ Contém arquivos de visão dos controles e layouts layouts/ Contém arquivos de visão do layout main.php O layout padrão para todas as páginas column1.php O layout para páginas com coluna única column2.php O layout para páginas com duas colunas site/ Contém arquivos de visão para o controle 'site' pages/ Contém páginas "estática" about.php A visão para a página "about" contact.php Visão para a ação 'contact' error.php Visão para a ação 'error' (exibindo erros externos) index.php Visão para a ação 'index' login.php Visão para a ação 'login'
  • 19.
    Instalação ZF 2 cdapache/htdocs/www/ git clone git://github.com/zendframework/ZendSkeletonApplication.git cd ZendSkeletonApplication # php composer.phar self-update # php composer.phar install Ferramenta para gerenciamento de dependência em PHP. Ele permite que você declare as bibliotecas dependentes que seu projeto precisa e ele irá instalar em seu projeto para você. O Composer tem como base as bibliotecas esse repositório: Packagist.
  • 20.
    Diretórios ZF2 Usa PHPUnitpara testar o código e Travis CI como serviço de integração continua O Zend Framework 2 não é compatível com o Zend Framework 1, na verdade ele é até parecido em alguns pontos na estrutura das pastas pois ambos são MVC. A grande novidade é a pasta VENDOR que será utilizada para carregar as bibliotecas adicionais ou complementares (mais ou menos como funcionava a library antes).
  • 21.
    Ferramentas e Componentes ZFTool Ferramentausada para facilitar a gerencia de projetos do Zend Framework. Doctrine Fornece diversas bibliotecas com foco em persistência de dados. ZendPHPUnit Componente para teste unitário (TDD). ZendPaginator Componente para paginação do sistema. ZendAuthentication componente fornece uma API para autenticação e inclui adaptadores concretos de autenticação para cenários de caso de uso comum ZendAuthenticationValidator Componente de validação
  • 22.
    IReport iReport é, designerde relatório de fonte aberta livre para JasperReports e JasperReports Server. criar layouts muito sofisticados, contendo gráficos, imagens, sub-relatórios, tabelas cruzadas e muito mais. Acessar seus dados através de JDBC, TableModels, JavaBeans, XML, Hibernate, CSV, e fontes personalizadas. Em seguida, publicar seus relatórios como PDF, RTF, XML, XLS, CSV, HTML, XHTML, textos, DOCX ou OpenOffice. IReport Ciclo de Vida
  • 23.
    PHP JasperXML Este projeto(Na verdade, é uma classe), que converte o xml gerado pelo IReports para relatório web em php facilmente. - Desenvolver relatório PDF com iReport, que é rápido, flexível e eficaz - Rodar nativamente em PHP - Integrar ao seu projeto existente facilmente - Você pode enviar qualquer parâmetro em seu relatório PDF / EXCEL facilmente, seja com GET ou POST - Código aberto, você pode alterar a biblioteca mesmo
  • 24.
    Rankings e Gráficos Rankingse Gráficos http://webrevisions.com/tutorials/php-framework-the-best-php-framework-for-2013/#.UcSLD_m1FPM http://www.phpframeworks.com/top-10-php-frameworks/ http://socialcompare.com/en/comparison/php-frameworks-comparison http://davidjconnelly.wordpress.com/2011/07/03/the-best-php-framework-of-2011/ http://bharat-c-solanki.blogspot.com.br/2012/04/top-10-ranking-php-frameworks.html http://php.dzone.com/news/top-10-php-frameworks http://www.zfort.com/blog/top-5-php-frameworks-infographic/ - Google Trends ( Pesquisa de Interesse Mundial ) http://www.google.com/trends/explore#q=yii%2C%20CodeIgniter%2C%20Zend%20Framework&cmpt= - Google Trends ( Pesquisa de Interesse Brasil ) http://www.google.com/trends/explore#q=yii%2C%20CodeIgniter%2C%20Zend%20Framework&geo=BR&cmpt=q