Blog do WebDevBr

Conheça os cursos gratuitos do WebDevBr! - Inscreva-se!

Blog do WebDevBr

MVC na prática - Entendendo o padrão MVC na prática

MVC é o design pattern que separa a "camada lógica" da "camada de exibição" em uma aplicação e é largamente utilizado desde projetos pequenos até os realmente muito grandes, veja por exemplos os frameworks PHP, Zend Framework, Laravel, CakePHP e muitos outros usam e abusam do MVC. Nesta aula quero montar um exemplo de código utilizando MVC sem usar qualquer ferramenta externa, vou tentar me mant…

Porque o Angular 2 será tão legal? É uma boa hora para aprender AngularJs1?

E o papo do momento não é o lançamento do AngularJs 2, ou é? Muitas perguntas vem surgindo nas redes socias, mas a que mais vejo é: vale a pena investir em AngularJs 1.x já que o 2 está em beta? Antes de responder está pergunta vamos dar uma olhada em algumas features do AngularJs 2. Compatibilidade O AngularJs 2 vai ser compatível com Chrome, Edge, Firefox, IE 9+, Safari, Android 4.1+, deskto…


URLs Amigáveis com PHP, .htaccess (Apache) e Nginx

Embora muito usadas em frameworks modernos (e até os não tão modernos), URLs amigáveis ja foram uma revolução na internet, mas ainda hoje muitos tentam aplicar nos projetos com base em parâmetros GET, o que leva complexibilidade ao seu .htaccess a medida em que mais formatos de URLs aparecem, mas e que tal levar esta complexibilidade para o PHP resolver e podermos montar a URL amigável que quiser…

Deploy simples com Git

Deploy simples com Git Depois do artigo de ontem sobre Deploy automático com GitHub e PHP várias pessoas me questionaram sobre o porque deveria ser feito assim e não apenas com Hooks do Git, então deixo aqui esta possibilidade para vocês e uma idéia para ir além, assim podem decidir o que é melhor. O que você precisa Neste ponto é ideial que você conheça o Git a ponto de conseguir publicar al…


Deploy automático com GitHub e PHP

Neste artigo vamos aprender como enviar os dados automaticamente do GitHub para o servidor final sempre que atualizarmos o repositório (no GitHub), para isso vamos usar webhooks. O processo é simples e natural e você pode implementar suas próprias regras, nada de Capistrano, Jenkins, Deployer e ferramentas novas, apenas o simples e puro PHP. O que você precisa Neste ponto é ideial que você conh…

Upload no Laravel 5

Neste artigo vamos falar um pouco sobre upload usando o Laravel 5.1, a grande vantagem que ví logo de cara é que ele usa o HttpFoundation nos bastidores, já comecei me sentindo em casa. Outra vantagem é que o \Input::file() automatiza tudo, é impressionante. O formulário Para o HTML do formulário eu crieu uma nova view em resouces/views/products/upload.blade.php com o seguinte código. <…


Silex - Controller como Classe, indo além

Um dos empecilhos que mais me incomodaram quando comecei com Silex é a forma como ele trabalha com controllers, da até pra criar um arquivo separado pra organizar, mas para quem gosta dos controllers em objetos fica tudo muito estranho (por falta de definição melhor). A solução, mas nem tanto Logo encontrei uma pequena página da documentação sobre o assunto e meu código mudou disso: $helloWord…

Laravel 5 - Eventos do Eloquent

Eventos são métodos (functions) que disparam automaticamente sempre que uma determinada ação é executada no seu banco de dados, imagine que você precisa fazer algo sempre que criar um novo registro, por exemplo, sempre que criar um novo usuário você quer criar um novo diretório para arquivos desta pessoa, vamos ver na prática. Entendendo o ciclo Os eventos disponíveis são estes listados a segui…


Slim Framework - Autenticação

Um micro framework muito bom que tenho usado cada vez mais é o Slim Framework, a documentação é clara,  é muito simples integrá-lo com qualquer componente PHP e eu adoro o mode (modos de uso), que são configurações específicas, por exemplo, para produção e desenvolvimento. Neste primeiro artigo que escrevo sobre o Slim quero mostrar um pouco sobre autenticação,  e claro, temos que configurar a c…

CakePHP 3 e relacionamentos entre tabelas

O artigo de número 100 não poderia deixar de ser sobre CakePHP, e desta vez quero falar um pouco sobre relacionamentos entre tabelas, um assunto que tira o sono de muita gente, vamos ver? hasOne - Um para um O relacionamento hasOne informa que um registro está relacionado a apenas um outro registro, por exemplo, um usuário pode ter apenas um perfil em uma rede social. Para definir um relaciona…


Migrations e Seeds no Laravel 5

Uma das primeiras coisa que faço quando começo a trabalhar em um novo projeto é modelar o banco de dados (acho que todo mundo, né) e de alguma forma passar a responsabilidade de criar e manter todas as tabelas ao PHP, para facilitar o deploy e eu não ter que ficar indo até o banco de dados toda hora (produtividade). E isso tem nome, chama migrations. Criando tabelas com Migration O Laravel 5 já…

Criando templates - Entendendo o padrão MVC na prática - Parte 11

Esta não é a última parte desta série, a minha vontade era voltar e reescrever tudo, mas não posso, seria um desrespeito com quem vem acompanhando desde a primeira publicação em 24 de outubro de 2013. Muita coisa mudou por aqui e quero que vocês acompanhem, então com o fim desta etapa vou começar outra (que terminarea rápido, prometo!) e vamos voltar e refatorar tudo o que foi feito utilizando pa…


Criando e configurando a aplicação - Entendendo o padrão MVC na prática - Parte 10

É isso ai, nosso framework está pronto, agora vamos ver um exemplo simples de utilização, pra não estender muito vamos apenas listar dados do banco em um tema do Twitter Bootstrap, neste artigo vamos ver a parte lógica da coisa, só vamos trabalhar no diretório App apenas. Os outros artigos desta série. A primeira coisa a se fazer é acessar App/Core/Config.php e inserir as configurações de banco…

5 coisas que um desenvolvedor PHP deve fazer e não faz

Existem muitas práticas que melhoram significativamente o desempenho do desenvolvedor e da aplicação, e são, em sua maioria, passos simples e rápidos, mas que vão mudar a sua maneira de ver as coisas. Alguns vão te dar novos caminhos pra resolver seus problemas rapidamente, outros serão configurações no php.ini, enfim, vamos as dicas. 1. Ativar o OPcache Muito se ouviu falar sobre a melhora de …


Como identificar problemas de performance no PHP com Xdebug

Esse é um assunto recorrente entre os devs de todas as linguagens, como saber se a sua aplicação está ou não consumindo mais recursos do que deveria? Posso responder em uma palavra: Profiling. O que é profiling Profile é perfil em inglês, quando uma palavra termina em ing, é o ato de fazer aquilo, (desculpem a explicação, inglês não é meu forte), profiling pode ser algo como geração de perfil. …

PSR-7 - O que é isso afinal de contas

A PSR-7 foi aprovada, muitos devs esperavam ansiosos por isso, mas muitos que ouviram falar não sabem ao certo o que essa nova regra faz, outros que não ouviram falar vão ouvir agora. O que é a PSR-7 Em tradução livre direta de https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-7-http-message-meta.md O objetivo da presente proposta consiste em proporcionar um conjunto de inte…


Transações no PDO, garantindo que tudo vai ser executado

Transactions são a maneira que o PDO do PHP tem de garantir que várias queries sejam executadas e em caso de erro, nenhuma será, simples assim! Imagine que você tem um script que precise executar um query baseado em outro, existem muitos exemplos a se pensar, vamos trabalhar com a ideia (até um clichê) que você tem um sistema financeiro que vai fazer a transferência entre contas, então temos: $v…

PHP desacoplado? É o futuro, é agora!!!

O PHP caminha cada dia mais para componentes especializados em resolver um problema único do que para grandes frameworks com recursos que tentam de salvar de tudo, você deveria ter o direito a escolher um ORM ou DAL diferente do Eloquent ou o Cake\ORM simplesmente por preferir assim. Mas a coisa caminha a passos largos (para nossa alegria). "E a interoperabilidade entre frameworks significa t…


[PHP CACHE] OPcache - Instalando e usando

Todo mundo sabe que cache é a primeira coisa a se fazer para melhorar a performance de uma aplicação. O que muitos devs não sabem é que o PHP já vem com o OPcache desde a versão 5.5 ou superior, mas calma, se você não usa esta versão do PHP não se preocupe, não vai afetar seus arquivos PHP, a configuração é feita dentro do php.ini. Como funciona? Sempre que requisitamos um arquivo PHP ele faz t…

Organizando as configurações - Preparando para o Deploy - no CakePHP 3

A primeira coisa que me irritou quando baixei a versão (ainda em beta) do CakePHP 3 é que agora as configurações ficam todas em um único arquivo. E se eu precisar configurar algo que deveria refletir no servidor de produção e localmente? Eu teria que editar o arquivo no servidor (que aqui é via SSH, sem FTP) ou criar uma rotina para identificar aonde estou (produção ou desenvolvimento), mas calma…


Página 2 de 5, mostrando 20 artigos de um total de 96, começando em 21, terminando em 40

* Parcelamento apenas cartão de crédito! Pode haver uma pequena variação no parcelamento em relação a simulações apresentadas!