Por que o mascote do PHP é um Elefante?
Postado em: 9 de junho de 2008 por Pedro RogérioVia: Anieto 2K.
Via: Anieto 2K.

Via Anieto2K descobri esse Cheat Sheet de PHP bem intuitivo, onde você pode efetuar o download em 2 formatos:
Agora, no site de Scott Klarr você pode encontrar mais alguns Cheat Sheets.
As Expressões Regulares são uma potente ferramenta que nos permite contrastar um texto com um padrão de busca. Essa tarefa é fundamental em alguns programas e em outros pode facilitar incrivelmente seu trabalho.
O PHP nos permite dois tipos principais de funções para expressões regulares: as do tipo ereg (Expressões Regulares POSIX) e as do tipo preg (Compatíveis com Perl). São muito similares, mas o segundo modo é mais potente.
Alex Barros do site Boozox.net escreveu um simples manual mas muito completo para aqueles que queiram aprender Expressões Regulares e aplicá-las em PHP. Em Português, você pode aprender também alguma coisa com o livro do Aurélio.
No site Devolio, você pode encontrar uma lista com 8 expressões regulares muito úteis na hora de se programar em PHP, muitas delas utilizadas para validar e-mail, nomes de usuário, números telefônicos, e-mails entre outras.
Essa regra é para permitir usuários com nome de 4 a 28 caracteres, alfanuméricos e acentuados:
$string = "userNaME4234432_";
if (preg_match('/^[a-z\d_]{4,28}$/i', $string)) {
echo "example 1 successful.";
}
Essa regra é para validar números de telefone, e os números devem ser escritos da seguinte maneira (###)###-####:
$string = "(032)555-5555";
if (preg_match('/^(\(?[2-9]{1}[0-9]{2}\)?|[0-9]{3,3}[-. ]?)[ ][0-9]{3,3}[-. ]?[0-9]{4,4}$/', $string)) {
echo "example 2 successful.";
}
A regra para validar e-mails é a seguinte:
$string = "first.last@domain.co.uk";
if (preg_match(
'/^[^0-9][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$/',
$string)) {
echo "example 3 successful.";
}
Permie utilizar números no seguinte formato: xxxxx e xxxxx-xxxx
$string = "55324-4324";
if (preg_match('/^[0-9]{5,5}([- ]?[0-9]{4,4})?$/', $string)) {
echo "example 4 successful.";
}
Não é necessário efetuar PING ou qualquer coisa do tipo, essa regra é válida para verificar se os IPs foram escritos corretamente, como esse exemplo 255.255.255.0:
$string = "255.255.255.0";
if (preg_match(
'^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:[.](?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}$',
$string)) {
echo "example 5 successful.";
}
Você também pode verificar valores hexadecimais em suas 2 formas, a normal e a abreviada: (#333, 333, #333333 o 333333) com o símbolo # opcional
$string = "#666666";
if (preg_match('/^#(?:(?:[a-f\d]{3}){1,2})$/i', $string)) {
echo "example 6 successful.";
}
Uma forma simples de buscar e eliminar comentários multi-linha em PHP, CSS e outras linguagens:
$string = "/* commmmment */";
if (preg_match('/^[(/*)+.+(*/)]$/', $string)) {
echo "example 7 successful.";
}
Um formato de data típico MM/DD/YYYY e sua validação é a seguinte:
$string = "10/15/2007";
if (preg_match('/^\d{1,2}\/\d{1,2}\/\d{4}$/', $string)) {
echo "example 8 successful.";
}
Para algumas pessoas, esses podem parecer conselhos óbvios, mas não são todos que programam em PHP, portanto, se quer criar código compatível com PHP6, siga essas recomendações:
Se você ao modelar seus bancos de dados encontra problemas ao nomear as tabelas, é por que está utilizando algumas palavras reservadas do MySQL, e para resolver seus problemas, estou postando aqui um resumo do ótimo artigo de Carlos Leopoldo sobre palavras reservadas em MySQL, que são as seguintes:
| Palavra | Palavra | Palavra |
|---|---|---|
| ADD | ALL | ALTER |
| ANALYZE | AND | AS |
| ASC | ASENSITIVE | BEFORE |
| BETWEEN | BIGINT | BINARY |
| BLOB | BOTH | BY |
| CALL | CASCADE | CASE |
| CHANGE | CHAR | CHARACTER |
| CHECK | COLLATE | COLUMN |
| CONDITION | CONNECTION | CONSTRAINT |
| CONTINUE | CONVERT | CREATE |
| CROSS | CURRENT_DATE | CURRENT_TIME |
| CURRENT_TIMESTAMP | CURRENT_USER | CURSOR |
| DATABASE | DATABASES | DAY_HOUR |
| DAY_MICROSECOND | DAY_MINUTE | DAY_SECOND |
| DEC | DECIMAL | DECLARE |
| DEFAULT | DELAYED | DELETE |
| DESC | DESCRIBE | DETERMINISTIC |
| DISTINCT | DISTINCTROW | DIV |
| DOUBLE | DROP | DUAL |
| EACH | ELSE | ELSEIF |
| ENCLOSED | ESCAPED | EXISTS |
| EXIT | EXPLAIN | FALSE |
| FETCH | FLOAT | FOR |
| FORCE | FOREIGN | FROM |
| FULLTEXT | GOTO | GRANT |
| GROUP | HAVING | HIGH_PRIORITY |
| HOUR_MICROSECOND | HOUR_MINUTE | HOUR_SECOND |
| IF | IGNORE | IN |
| INDEX | INFILE | INNER |
| INOUT | INSENSITIVE | INSERT |
| INT | INTEGER | INTERVAL |
| INTO | IS | ITERATE |
| JOIN | KEY | KEYS |
| KILL | LEADING | LEAVE |
| LEFT | LIKE | LIMIT |
| LINES | LOAD | LOCALTIME |
| LOCALTIMESTAMP | LOCK | LONG |
| LONGBLOB | LONGTEXT | LOOP |
| LOW_PRIORITY | MATCH | MEDIUMBLOB |
| MEDIUMINT | MEDIUMTEXT | MIDDLEINT |
| MINUTE_MICROSECOND | MINUTE_SECOND | MOD |
| MODIFIES | NATURAL | NOT |
| NO_WRITE_TO_BINLOG | NULL | NUMERIC |
| ON | OPTIMIZE | OPTION |
| OPTIONALLY | OR | ORDER |
| OUT | OUTER | OUTFILE |
| PRECISION | PRIMARY | PROCEDURE |
| PURGE | READ | READS |
| REAL | REFERENCES | REGEXP |
| RENAME | REPEAT | REPLACE |
| REQUIRE | RESTRICT | RETURN |
| REVOKE | RIGHT | RLIKE |
| SCHEMA | SCHEMAS | SECOND_MICROSECOND |
| SELECT | SENSITIVE | SEPARATOR |
| SET | SHOW | SMALLINT |
| SONAME | SPATIA | SPECIFIC |
| SQL | SQLEXCEPTION | SQLSTATE |
| SQLWARNING | SQL_BIG_RESULT | SQL_CALC_FOUND_ROWS |
| SQL_SMALL_RESULT | SSL | STARTING |
| STRAIGHT_JOIN | TABLE | TERMINATED |
| THEN | TINYBLOB | TINYINT |
| TINYTEXT | TO | TRAILING |
| TRIGGER | TRUE | UNDO |
| UNION | UNIQUE | UNLOCK |
| UNSIGNED | UPDATE | USAGE |
| USE | USING | UTC_DATE |
| UTC_TIME | UTC_TIMESTAMP | VALUES |
| VARBINARY | VARCHAR | VARCHARACTER |
| VARYING | WHEN | WHERE |
| WHILE | WITH | WRITE |
| XOR | YEAR_MONTH | ZEROFILL |
Mas como toda regra tem sua excessão o MySQL permite que algumas palavras reservadas sejam usadas como identificadores. Exemplos dessas palavras você pode ver abaixo:
| ACTION |
| BIT |
| DATE |
| ENUM |
| NO |
| TEXT |
| TIME |
| TIMESTAMP |
Adaptação do artigo original de: Anieto2K
Se a cada dia você fica perdido com cada palavra nova que aparece na internet, com esse guia, não vai acontecer mais esse tipo de coisa, agora você vai entender perfeitamente a língua dos geeks:

TutoCle é um buscador focado em encontrar material relacionado ao desenvolvimento web. Se você usa Firefox, pode incluir em seu browser um plug-in para fazer as buscas diretamente dentro do Firefox, você pode também efetuar buscas através da nuvem de tags que encontra no site, ou mediante palavras chave.