simplexml_load_file

(PHP 5, PHP 7)

simplexml_load_file Interpreta um arquivo XML e o transforma em um objeto

Descrição

simplexml_load_file ( string $filename [, string $class_name = "SimpleXMLElement" [, int $options = 0 [, string $ns = "" [, bool $is_prefix = false ]]]] ) : SimpleXMLElement

Converte o documento XML bem-formado no arquivo indicado em um objeto.

Parâmetros

filename

Caminho para o arquivo XML

Nota:

Libxml 2 desescapa a URI, então se deseja passar, por exemplo b&c como um parâmetro a da URI, deve-se chamar simplexml_load_file(rawurlencode('http://example.com/?a=' . urlencode('b&c'))). Desde o PHP 5.1.0 não é mais necessário fazer isso, pois o PHP o fará automaticamente.

class_name

É possível utilizar o parâmetro opcional simplexml_load_file() para retornar um objeto da classe especificada. Esta classe deve estender SimpleXMLElement.

options

Desde o PHP 5.1.0 e da Libxml 2.6.0, você também pode utilizar o parâmetro options para especificar parâmetros adicionais da Libxml.

ns

Prefixo ou URI do namespace.

is_prefix

true se ns for um prefixo, false se for URI; o padrão é false.

Valor Retornado

Retorna um objeto da classe SimpleXMLElement com propriedades contendo os dados do documento XML, ou false em caso de falha.

Aviso

Esta função pode retornar o booleano false, mas também pode retornar um valor não-booleano que pode ser avaliado como false, como 0 ou "". Leia a seção em Booleanos para maiores informações. Utilize o operador === para testar o valor retornado por esta função.

Erros

Produz uma mensagem de erro E_WARNING para cada erro encontrado nos dados XML.

Dica

Utilize a função libxml_use_internal_errors() para suprimir todos os erros XML e a função libxml_get_errors() para iterar sobre eles posteriormente.

Exemplos

Exemplo #1 Interpreta um documento XML

<?php
// O arquivo test.xml contém um documento XML com um elemento root
// e ao menos um elemento /[root]/title.

if (file_exists('test.xml')) {
    
$xml simplexml_load_file('test.xml');

    
print_r($xml);
} else {
    exit(
'Falha ao abrir test.xml.');
}
?>

Este script mostrará, em caso de sucesso:

SimpleXMLElement Object
(
  [title] => Example Title
  ...
)

Nesse ponto já é possível utilizar $xml->title e quaisquer outros elementos.

Veja Também