Archive for the ‘Últimos Tópicos’ category

PHP erro nível Assentamento Dependência Too Deep recursiva

Marco 12, 2010

Eu instalei o PHP 5.2 em um dos computadores o meu teste hoje e um par de pedaços de código, que anteriormente trabalhou muito bem na versão 5.1.6 jogou erros fatais na nova versão. A mensagem de erro foi "nível de nidificação muito profundo - recursive dependência?"E levou um pouco de tempo

para rastrear a origem do problema. Aqui está o que eu fiz de errado.

No PHP existem dois operadores de comparação, == E ===. É do conhecimento geral que o primeiro não é rigorosa sobre o tipo, mas o segundo é. Assim, for example

eco ( == false 0 ); // verdadeiro

eco ( === false 0 ); // falso

- 0 é um inteiro e falso é um boolean

Meu problema surgiu com digitação não-estrita com os objetos.

$a = new MyObj();
$b = new MyObj();
se( $a == $b )

Eu não tinha pensado que eu estava fazendo com este código. Quando comparando dois objetos utilizando o operador de comparação não-estrita (==) PHP compara todas as propriedades dos objetos e se combinam os objetos são considerados iguais. Se eles não corresponderem, não são iguais. Na realidade, temos uma relação recursiva de todas as propriedades de cada objeto, e todas as suas propriedades, etc. até chegar a tipos de dados básicos como strings e inteiros.

If, contudo, usamos comparação estrita (===), PHP irá verificar se os dois objetos são exatamente o mesmo objeto, não apenas objetos com as mesmas propriedades.

MyObj classe
{
p public $;
}

$a = new MyObj();
$b = new MyObj();
$c = new MyObj();
$a->p = 1;
$b->p = 1;
$c->p = 2;
eco ( $a == $c ); // falso
eco ( $a == $b ); // verdadeiro
eco ( $a === $b ); // falso

O problema surge quando você tem referências circulares em seus objetos de imóveis. Assim, for example

MyObj classe
{
p public $;
}
OtherObj classe
{
public $ q;
}

$a = new MyObj();
$b = new OtherObj();
$a->p = $ b;
$b->q = $ a; // a referência circular: $a->p->=== Q $ a

$c = new MyObj();
$d = new OtherObj();
$c->p = $ d;
$d->q = $ c;// outra referência circular: $c->p->q $ c ===

eco ( $a == $c ); // Erro fatal:
Nesting level too deep – dependência recursiva?

A fim de comparar a $ a $ c, PHP deve comparar suas propriedades. Portanto, a lógica em PHP é algo como isto: $a == $c if $a->p == $c->p if $a->p->q == $c->p->q if $a->p->q->p == $c->p->q->p etc. indefinidamente.

PHP 5.1 Parecia bom sobre o problema de alguma forma (provavelmente depois de um certo nível de recursão simplesmente retornou false) – e, normalmente, fPHPionou muito bem. PHP 5.2 corretamente produz o erro fatal acima.

Uma vez que você conhece o problema, A solução é fácil – usar comparação estrita.

eco ( $a === $c ); // falso (e nenhum erro)

A comparação rigorosa simplesmente verificar se os dois objetos estão no mesmo local na memória e assim nem sequer olhar para os valores das propriedades.

NB. O mesmo problema pode surgir quando se utiliza os operadores de comparação negada (utilização !== instead of !=) and when using in_array (use in_array’s third parameter to indicate strict comparison).

Compartilhe e Divirta-se

  • wp socializer sprite mask 16px PHP Error Nesting Level Too Deep Recursive Dependency
  • wp socializer sprite mask 16px PHP Error Nesting Level Too Deep Recursive Dependency
  • wp socializer sprite mask 16px PHP Error Nesting Level Too Deep Recursive Dependency
  • wp socializer sprite mask 16px PHP Error Nesting Level Too Deep Recursive Dependency
  • wp socializer sprite mask 16px PHP Error Nesting Level Too Deep Recursive Dependency
  • wp socializer sprite mask 16px PHP Error Nesting Level Too Deep Recursive Dependency
  • wp socializer sprite mask 16px PHP Error Nesting Level Too Deep Recursive Dependency
  • wp socializer sprite mask 16px PHP Error Nesting Level Too Deep Recursive Dependency
  • wp socializer sprite mask 16px PHP Error Nesting Level Too Deep Recursive Dependency

Como receber e analisar e-mails usando POP3 e PHP

01 de março, 2010

Eu gostaria de descrever alguns métodos sobre como escrever o processador para o correio de entrada. Eu tive que usar a tal manipulação analisar e-mails recebidos de diferentes fontes. Isso pode ser útil para escrever seu próprio sistema de filtro de spam, sistema de secretária eletrônica ou um bilhete para receber pedidos por e-mail.

Para implementar o algoritmo do analisador e-mail, precisamos

  1. conectar e log-on para o servidor de e-mail
  2. contar o número de cartas recebidas
  3. recive e-mail do servidor usando o protocolo POP3
  4. o processo de cabeçalhos de e-mail e do corpo e fazer a análise
  5. … implementar quaisquer ações adicionais

Ok, não é uma tarefa muito específica para PHP codificação, por isso precisamos de hospedagem que suporta a ligação externa. Não me proponho a escrever decisão inteiramente porque muito tem sido realizado pelos programadores talentosos já. Por exemplo, você pode ter um módulo pronto que permita aceitar e-mails de um servidor remoto.

Thank's to Manuel Lemos and his module (classe php) que nomeou pop3.php.

Para conectar-se dessa classe em seu código, você só precisa usar include ou require comando: requerer(“pop3.php”);


hostname=$hostname;
$result=$pop3_connection->Open();

// We are trying to open connection and display the result
echo $result;
// Trying to logon and display the error if any appear
$error=$pop3_connection->Login($usuário,$accesscode,$apop);
se ($erro<>"Erro de senha: Falha de logon: Nome de usuário desconhecido ou senha incorreta. ") {echo $error; saída;}
// Now get the statistic how many emails are stored and the size of them $result=$pop3_connection->Statistics($messages, $size);
eco "$hostname contains  $messages de $size bytes.";

//..... Não podemos receber e-mails no ciclo e analisá-los .... //

// Se nada a ver - we can close the connection
$error=$pop3_connection->Close(); //
echo $error;
?>

Agora nós sabemos como conectar e log-on para o servidor POP3 e como solicitar o número de receber e-mails e os tamanhos. Próximo, devemos receber cada e-mail e analisar os cabeçalhos e corpo de matriz.

TO BE CONTINUED

Compartilhe e Divirta-se

  • wp socializer sprite mask 16px How to receive and parse emails using POP3 and PHP
  • wp socializer sprite mask 16px How to receive and parse emails using POP3 and PHP
  • wp socializer sprite mask 16px How to receive and parse emails using POP3 and PHP
  • wp socializer sprite mask 16px How to receive and parse emails using POP3 and PHP
  • wp socializer sprite mask 16px How to receive and parse emails using POP3 and PHP
  • wp socializer sprite mask 16px How to receive and parse emails using POP3 and PHP
  • wp socializer sprite mask 16px How to receive and parse emails using POP3 and PHP
  • wp socializer sprite mask 16px How to receive and parse emails using POP3 and PHP
  • wp socializer sprite mask 16px How to receive and parse emails using POP3 and PHP

MBOX Free to EML Converter

14 de fevereiro, 2010

É bom que hoje ainda existem programadores que escrevem software excelente, sem nenhum custo. O que eu estou falando? Quero dizer que como eu encontrei um outro programa para a minha coleção de must-have utilitários.

Apple MAC computadores são amplamente utilizada em nosso escritório. Esta é a política da empresa. Apesar da política da empresa, nosso patrão prefere Windows e usa seu laptop destaque. Quem deve quebrar as regras? Claro que o patrão, o resto não é permitido icon smile Free MBOX to EML Converter Devo dizer que partilho essa preferência, Windows assim que eu tiver instalado 7 para o meu laptop em casa.

Nossos advogados deve passar algumas investigações ao longo do tempo e que deve rever a correspondência do nosso pessoal, mas aceitou apenas os arquivos no Outlook formato PST.

Em um artigo anterior Eu escrevi sobre o programa extremamente necessário Outlook Assistente de Importação, o que me salvou um monte de tempo quando importação eml para o Outlook. A tarefa que eu tinha que completar apenas me colocar em estado de choque. É necessário para converter e-mails de nossos funcionários para o Outlook .pst arquivo. Como podemos conciliar as coisas incompatíveis? Como combinar MAC OS com o Windows?

Para começar tive de realizar uma auditoria e descobriu que os nossos colaboradores com diversos clientes de e-mail. Há apenas alguns deles: Rodovia com pedágio, Mac Mail, Comitiva, MailCOPA, Thunderbird, Eudora, Berkeley Mail. A tarefa da conversão não parece factível. Eu decidi que, se um motor de busca não é imediatamente me trazer a solução, então eu vou dizer ao meu chefe que a missão é impossível. Então eu fiz a pesquisa para a frase “comitiva, thunderbird, mac-mail, para eml para pst mbox livre” ea busca foi bem sucedida, revelou-se algo que eu nunca esperava. Além disso, a palavra GRÁTIS não se coaduna com me com a tarefa que tinha que fazer. Imagine minha surpresa quando na página de descrição do outro eml para pst conversor, Achei que a mbox livre para converter eml.

A revisão de software mostrou que, apesar do fato de que o programa é gratuito, ele tem o potencial incrível. No entanto, a caixa de arquivos no formato de programas diferentes que variam, o programa foi capaz identificar com precisão todas as assinaturas meta e reconhecer corretamente o formato de arquivo. Eu não estou brincando, todos os arquivos de caixa Rodovia com pedágio, Mac Mail, Comitiva, MailCOPA, Thunderbird, Eudora e Berkeley Mail foram transformadas em matrizes de e-mail arquivos formato EML. Tendo o Outlook Assistente de Importação em minhas mãos me permite importar todas as eml em Outlook PST.

MBOX Free to EML Converter funciona como um processador de lote. Primeiro você deve selecionar todas as medidas necessárias arquivos mbox a partir do qual pretende recuperar mensagens eml. É fácil selecionar todos os arquivos com o Mudança chave. Depois que, você precisa clicar no Processamento botão, apontar para o diretório vazio em seu disco rígido e aguardar o resultado. O programa de processamento de todos os arquivos seqüencialmente, ele cria um diretório para cada arquivo e preenchê-lo com extraídos eml. No meu caso eu tinha um monte de arquivos de caixa de correio que foram nomeados de acordo com o usuário os nomes dos nossos colaboradores. Eventualmente, eu tenho um monte de pastas, cada um tinha um nome de usuário e continha todos os correspondentes eml Obtido a partir da caixa de correio.

Compartilhe e Divirta-se

  • wp socializer sprite mask 16px Free MBOX to EML Converter
  • wp socializer sprite mask 16px Free MBOX to EML Converter
  • wp socializer sprite mask 16px Free MBOX to EML Converter
  • wp socializer sprite mask 16px Free MBOX to EML Converter
  • wp socializer sprite mask 16px Free MBOX to EML Converter
  • wp socializer sprite mask 16px Free MBOX to EML Converter
  • wp socializer sprite mask 16px Free MBOX to EML Converter
  • wp socializer sprite mask 16px Free MBOX to EML Converter
  • wp socializer sprite mask 16px Free MBOX to EML Converter

Space Shuttle vídeo do começo ao fim

25 de janeiro, 2010

NASA! Eu encontrei este vídeo absolutamente incrível. Doze minutos de ação Space Shuttle peças. Iniciar a partir da Terra e para o mar. Espaço câmeras em cada parte do shuttle, parece muito interessante. Muito bonita Space Shuttle vídeo.

STS-129 destaques em vídeo compiladas pelo SE&Eu equipe de imagens aqui no JSC de todo o terreno, ar, ET activos e SRB.

Compartilhe e Divirta-se

  • wp socializer sprite mask 16px Space Shuttle video from start to end
  • wp socializer sprite mask 16px Space Shuttle video from start to end
  • wp socializer sprite mask 16px Space Shuttle video from start to end
  • wp socializer sprite mask 16px Space Shuttle video from start to end
  • wp socializer sprite mask 16px Space Shuttle video from start to end
  • wp socializer sprite mask 16px Space Shuttle video from start to end
  • wp socializer sprite mask 16px Space Shuttle video from start to end
  • wp socializer sprite mask 16px Space Shuttle video from start to end
  • wp socializer sprite mask 16px Space Shuttle video from start to end