• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
10+ Coisas Que Odeio Em Php
 

10+ Coisas Que Odeio Em Php

on

  • 2,331 views

Palestra que ministrei no II PHP Day do Espírito Santo na FAESA. Essa palestra tem como objetivo alertar aos PHPzeiros a importância de se conhecer a linguagem, ler mais a documentação e tomar ...

Palestra que ministrei no II PHP Day do Espírito Santo na FAESA. Essa palestra tem como objetivo alertar aos PHPzeiros a importância de se conhecer a linguagem, ler mais a documentação e tomar cuidado ao codificar.

Statistics

Views

Total Views
2,331
Views on SlideShare
2,310
Embed Views
21

Actions

Likes
0
Downloads
16
Comments
0

5 Embeds 21

http://www.slideshare.net 12
http://www.almirmendes.com 4
http://www.phpes.org 2
http://www.linkedin.com 2
http://www.slashdocs.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    10+ Coisas Que Odeio Em Php 10+ Coisas Que Odeio Em Php Presentation Transcript

    • 10+ coisas que odeio em PHP Almir 'm3nd3s' de Araújo Coordenador do Grupo PHP-ES Junior Level Linux Professional (LPIC-1) Desenvolvedor PHP desde 2005 Entusiasta de Software Livre 1/20
    • Motivação ● Inspirado na: 10 Coisas que eu Odeio em Java (Rafael Santos) ● Erros comuns ● Falhas de segurança ● Falta de conhecimento ● PHP é fácil 2/20
    • Segundo a Desciclopédia: “PHP (Pqp,Hoje estou com Prequiça) é uma das sete linguagens de programação consideradas pela Igreja Católica como satânicas … . Acredita- se que foi criada com o único propósito de desvirtuar inocentes programadores e levá-los ao caminho do mal. O sujeito que se atreve a programar em PHP começa a perder gradativamente o conhecimento em outras linguagens, e passa a usar variáveis sem as declarar em qualquer linguagem.” http://desciclo.pedia.ws/wiki/PHP 3/20
    • Não se assuste! ● PHP é uma linguagem muito poderosa ● Suporte a inúmeros banco de dados ● Comunicação com outros serviços utilizando protocolos como LDAP, IMAP, SNMP, NNTP, POP3, HTTP, COM (em Windows) e incontáveis outros. ● O PHP possui inúmeras extensões ● Ótima documentação ● PHP é fácil ● A intenção é informar e alertar 4/20
    • Quem usa PHP? EU! 5/20
    • 1/2 Cronograma ● Register globals e escopo de variáveis ● Operador de controle de erro ● Variáveis variáveis ● Constantes automáticas ● Casting e Auto Casting ● Aspas, Apóstrofos e Crases ● set_time_limit() ● Modificadores de cabeçalho e “?>” 6/20
    • Cronograma 2/2 ● Cuidado com Inteiros “desconhecidos” ● Comparações em PHP ● Funções e seus Alias 7/20
    • Register Globals ● Obsoleto a partir do PHP 5.3.0 ● Removido do PHP 6.0.0 ● Desde a versão 4.2.0 definido como OFF ● Não se confia em estranhos! ● Com register_globals ativado é mais fácil escrever códigos inseguros 8/20
    • Operador de Erro ● O PHP suporta um operador de controle de erro: o sinal 'arroba' (@) ● Qualquer mensagem de erro gerada por uma expressão será ignorada ● Uso inadequado ● Prefira usar funções de Manipulação de Erros e Logging, ou ao menos track_errors + $php_errormsg 9/20
    • Vaiáveis variáveis ● Uma variável variável pega o valor de uma variável e a trata como o nome de uma variável. ● O que dizer de arrays assim? 10/20
    • Constantes automáticas ● Já experimentou escrever algo como: <?php echo 5 * kg * batata; ?> 11/20
    • Casting e Autocasting ● PHP é como uma mãe ● Pode acontecer por descuido ● Dificilmente se faz isso por querer! (eu acho) ● Caso clássico: patos, galinhas e pombo ● Me diga o resultado de: 1 + "-1.3e3"; 12/20
    • Aspas, Apóstrofos e Crases ● Você sabe a diferença? ● Para que serve cada uma? ● Aspas (“) ● Apóstrofo(') ● Crase (`) 13/20
    • set_time_limit(0) ● Limita o tempo de execução do script ● Se este limite é atingido, o script retorna um erro fatal ● Nunca! Eu disse NUNCA, nunca use set_time_limit(0) sem que seja necessário! 14/20
    • Modificadores de Cabeçalho e a tag de fechamento do PHP ● A função header() é usada para enviar um raw HTTP header. ● Precisa ser chamada antes que qualquer saída tenha sido feita. ● É muito comum acontecer problemas quando usando includes. ● Para evitar alguns programadores costumam não “finalizar” o código PHP com “?>” 15/20
    • Cuidado com Inteiros “desconhecidos” ● Menos comum, mas pode virar uma pegadinha ● Qual o resultado da seguinte soma em PHP: 07 + 011? ● E esta soma: 0x21 + 1? ● Ok, ok! E essa então: 1 + 1e2 ● Ler a documentação é sempre bom! 16/20
    • 1/2 Comparações em PHP ● Responda o retorno das comparações abaixo: ● 0 == “a” ● “1” == “01” ● “10” == “1e1” ● Funções que retornam posição: strpos(), array_search(), ... ● Operador Idêntico ● Operador Não Idêntico 17/20
    • 2/2 Comparações em PHP ● Operadores de comparação: &&, || e and, or ● Qual o resultado é impresso pelo var_dump() para essas comparações: $a = true && false; $b = true and false; var_dump($a, $b); $c = true || false; $d = true or false; var_dump($c, $d); 18/20
    • Funções e Alias ● chop() e rtrim() ● die() e exit() ● doubleval() e floatval() ● fputs() e fwrite() ● ini_alter() e ini_set() ● is_*() 19/20
    • That's All Folks 20/20