Postagens

Mostrando postagens de julho, 2013

PHP - Detectando encode de string e convertendo com mb_detect_encoding

Uma dica rápida é a utilização de mb_detect_encoding() para a detecção do encode de uma string. <?php $str = 'Este é meu texto' echo mb_detect_encoding($str); Resultado: ASCII Vamos criar uma função para identificar e converter uma string: <?php function converte($string) { switch  (mb_detect_encoding($string))  { case 'ASCII': return $string; break; case 'UTF-8': return utf8_decode($string); break; } } echo converte('Este é meu texto'); Por hoje é só!

PHP - Usando REGEXP ou Expressão Regular para selecionar strings com acentos

REGEXP ou Expressões Regulares já sabemos que são bem complicados, mas esta dica é bem tranquila. Quantas vezes você já não tentou selecionar aquelas palavras ou frases e quando percebeu... tinha um monte de acentos! Como consequência ou a palavra não é selecionada ou só um pedaço dela. Vamos começar com o exemplo abaixo utilizando uma frase de Albert Einstein : <?php  $html = "<blockquote><p>mais fácil é explodir um <strong>átomo</strong> que um preconceito.</p></blockquote><p><em>Albert Einstein</em></p>"; preg_match_all('/<strong>([a-z]*)/',$html,$cotacao); var_dump($cotacao); Teremos como resposta: array(2) {   [0]=>   array(1) {     [0]=>     string(8) "<strong>"   }   [1]=>   array(1) {     [0]=>     string(0) ""   } } Nossa REGEXP não foi muito feliz. Queríamos pegar toda a palavra...

MySQL - Fazendo Update com Subquery

Updates às vezes são bem chatos, principalmente quando devemos atualizar uma determinada tabela baseado em outra. Mas nem tudo está perdido! Podemos utilizar as sempre úteis Subqueries ou Subselects para fazer este tipo de atualização. Vamos definir as nossas tabelas base: Tabela 'site' id nome url tipo acessos 1 Wikipedia Home http://www.wikipedia.org/ home 0 2 Wikipedia NASA http://en.wikipedia.org/wiki/NASA article 0 3 Wikipedia Planetas http://pt.wikipedia.org/wiki/Planeta article 0 Tabela 'tag' id id_site nome 1 2 Agência 2 2 Estados Unidos 3 2 Pesquisa 4 3 Espaço 5 1 Wiki 6 3 Espaço 7 1 Wiki 8 2 Espaço Vamos atualizar na tabela 'site' os campos 'acessos' baseado na tabela 'tag' Primeiro vamos selecionar todas as tags cujo 'nome' seja igual a 'Espaço' SELECT       id_site  FROM       ...

Bitcoin, a moeda anônima da Web.

O Bitcoin foi muito falado de algum tempo para cá e acredito que muitos programadores, que se interessam pelo assunto "criptografia" com certeza se interessaram ou se interessarão por esta nova moeda. Para quem não sabe o Bitcoin é um moeda criada na Internet e que tem como principal característica permitir transações financeiras de maneira anônima. Isto acontece porque o programa que suporta a moeda funciona baseado em criptografia e, além disto, não utiliza um servidor central. Cada usuário da rede Bitcoin funciona como uma espécie de validador. O assunto é muito interessante e vale a pena ser pesquisado. Neste link você pode saber mais detalhes da história por trás do Bitcoin e varias outras curiosidades . Se você pesquisou sobre o assunto ou já usou a moeda deixe seu comentário. Abraço

Instalando o Zend Framework no Windows

Imagem
Existem muitos frameworks no mercado e um dos principais é o Zend Framework . A função de um framework é tornar mais rápido o desenvolvimento de aplicações. Para isto um framework trabalha com orientação a objetos, utilizando classes que podem ser reaproveitadas em várias partes da aplicação. Além disto um framework trabalha com a estrutura chamada VMC que separa o que é visto pelo usuário (View) da lógica da aplicação (Model) e utiliza um mediador entre as duas que pega o que o usuário fez e o envia para a lógica da aplicação (Controler) Vamos assumir que você tem o PHP e o Apache instalados. Aqui vamos seguir o procedimento com o XAMPP instalado C:\xampp\ . Vamos criar uma pasta específica para os projetos com zend, já que podemos utilizar vários frameworks para fazer diferentes aplicações. Nossa pasta base será C:\xampp\htdocs\zend Baixando o Zend Framework O Zend pode ser baixado em http://framework.zend.com/downloads/latest . Dentre as opções baixe a Zend Framewo...