Location: PHPKode > scripts > Easy Message > websys.class/msg.class.php
<?php
/*
*   Classe que permite a leitura de um arquivo XML, faz um loop e adiciona no array ($arrayMsg) 
*   as mensagens de erro como indice (atributo <error>) e seus respectivos conteúdos (atributo <content>).
*
*   Contém método para exibir as mensagens no ponto em que for chamada através 
*
*   ATENÇÃO / ATTENTION / ATENCIÓN
*   Esta classe pode ser utilizada livremente, mas por favor, não remova os créditos.
*   This class can be used freely, but please do not remove the credits
*   Esta clase puede ser utilizado libremente, pero por favor no retire los créditos
*
*   Autor: Claudio Eden 
*   Email: hide@address.com
*   Site: www.eden.com.br
*   Versão: 2.03
*/

class LoadMessage {
	private $arrayMsg = array();
	private $xmlFile;
	private $xml;
	
	function __construct($xmlFile = "msg.xml") {
		$this->xml = $xmlFile;
		$this->loadXml($this->xml);
	}
	
	/* Método que carrega o xml contendo as mensagens utilizadas  no sistema  */
	private function loadXml($xml) 
	{		
		// verifica se arquivo existe para prosseguir com a carga
		if(!file_exists($xml))
		{
			// Se arquivo NÃO existe, exibe informação na tela
			echo "O arquivo ".$this->xml." n&atilde;o existe!"; 
			exit();
		}
		$simpleXml = @simplexml_load_file($xml);
		
		if(!$simpleXml)
		{	
			// Caso não consiga carregar o arquivo XML, exibe informação na tela
			echo "Erro ao carregar o arquivo ".$this->xml."!";
			exit();
		}

		// Executa um loop no arquivo e cria um ARRAY cujo indice é o erro e o conteúdo é a mensagem a ser exibida
		foreach($simpleXml->msg as $loadMsg){			
			$this->arrayMsg["$loadMsg->error"][content] = $loadMsg->content;
			$this->arrayMsg["$loadMsg->error"][type] = $loadMsg->type;
		}
		
	}
	
	/* Método que verifica se o parâmetro existe na chave(índice) do array */
	private function msg($keyMsg) 
	{
		if($this->arrayMsg == null || $this->arrayMsg[$keyMsg] == null )
		{
			return "empty";	
		}
		return $this->arrayMsg[$keyMsg];
	}

	/*  Método para imprimir a mensagem na tela. */
	function showMsg($message)
  	{
		$this->txtRetorno  = '<div id="msg" class="'.$this->arrayMsg[$message][type].'">';
		$this->txtRetorno .= utf8_decode($this->arrayMsg[$message][content]);
		$this->txtRetorno .= '</div>';
		echo $this->txtRetorno."<br />";
	} 
	
	/* Método para destruir o array de mensagens */
	function __destruct() 
	{	
		unset($this->arrayMsg);
	}
	
} 
?>
Return current item: Easy Message