Programação  
 
Conhecimento computador >> Programação >> Programação PHP /MySQL >> 
PHP __ Autoload Conflito
PHP dá erros fatais quando os usuários tentam usar uma classe indefinida e não há uma função autoload nomeado corretamente __ para preenchê-lo . Conflitos autoload PHP surgem quando mais de uma função autoload é definida fora de uma biblioteca PHP, não é possível encontrar classes referenciadas ou protocolos SOAP são usados. PHP Classes

programadores PHP pode colocar as classes usadas pelo programa em um arquivo de diretório separado . Isso permite que os programadores a adicionar novas classes em tempo de execução . Existem classes separadas para diferentes tipos de dados, tais como empregados , números de contas de clientes e peças de equipamentos monitorados em um banco de dados. Cada arquivo de classe termina com . Class.php . Um diretório de equipamento poderia ser nomeado equipment.class.php . A declaração require_once () permite que o arquivo de classe para ser usado por scripts. Em vez de exigir programadores para entrar com múltiplas instruções no início de um script para cada tipo de classe , PHP permite erros classe carregamento automático .
Autoloading

Quando PHP não reconhece uma classe , ele procura a função __ autoload . De acordo com a "Programação núcleo do PHP , " se é que existe PHP chama -lo com um único parâmetro, que é o nome da classe , porque o PHP assume que a definição de classe são armazenados em um arquivo que começa com o nome da classe . Quando uma classe estudantil é usado , PHP assume que o class_student.php arquivo contém a definição de classe do estudante. Se o arquivo é chamado class_fifthgrade.php em ​​vez , por exemplo , o script PHP não irá encontrá-lo e falhar.

Classe Erros Nome

A função autoload só funciona corretamente se a classe é definida no final do script. Se a classe não está definido mais tarde no programa , a função autoload irá gerar erros . Se o arquivo de classe está faltando , a função autoload falhará. Use cordas para se referir a classes dinamicamente em vez de editar ou substituir o arquivo de classe , enquanto o processo corre . Adicionando o include () função permite que o PHP para criar uma nova classe e evitar conflitos.

PHP Autoloading Conflitos

A função __ autoload só pode ser definida em um processo PHP. Conflitos de carregamento automático PHP ocorrer quando a função é definida mais de uma vez ou alterados durante o processo. "Objetos PHP, Padrões e Práticas ", sugere usar a função spl_auotload_register para mudar a função autoload dinamicamente. A biblioteca padrão PHP ou SPL permite aos usuários definir e registrar múltiplas funções de carregamento automático , sem violar a definição autoload único por regra processo. Cada função autoload utilizado no processo deve ser declarado e registrado com o SPL antes da instrução require_once é usada.
Extensão SOAP Conflitos

protocolos de SOAP definir o construto utilizado para troca de mensagens. PHP versão 5 tem uma extensão SOAP nativa. NuSOAP é um método orientado a objetos de gerar mensagens. Os PHP versão 5 conflitos de extensão SOAP com a classe NuSOAP . O conflito é resolvido desativando versão PHP extensão SOAP nativo do 5 .

Anterior :

Próximo : No
  Os artigos relacionados
·Como Ler Consulta Cordas em PHP 
·Ajuda com PHP e compilação Falha 
·Como capturar um título página usando PHP 
·Como juntar duas strings em PHP 
·Get_headers Vs . Velocidade cURL em PHP 
·Como fazer comentários em um arquivo PHP 
·Como inserir um arquivo PHP em todas as páginas 
  Artigos em destaque
·Como usar HTML em linha Elements 
·Como controlar barras de rolagem com Javascript 
·O que é o Microsoft Visual Studio 6.0 
·Como instalar o Allegro Visual C 
·Como substituir todos os elementos DIV 
·Como criar uma String dinâmica em C + + 
·Como Iniciar um navegador da Web em Java 
·Como definir o tamanho de uma imagem em HTML 
·Guia de um novato absoluto de Programação 
·Como escrever declarações de dados 
Cop e direita © Conhecimento computador http://ptcomputador.com Todos os Direitos Reservados