XML (linguagem de marcação extensível) é um tipo de linguagem de marcação que é usada para armazenar os dados em um formato legível por humanos. É diferente de outros idiomas de marcação. Cada etiqueta deste idioma é definida pelo usuário. O uso do XML é a melhor solução para armazenar uma pequena quantidade de dados quando você não deseja usar nenhum banco de dados para armazenar dados. Os dados do documento XML podem ser facilmente acessados e usados em qualquer aplicativo da Web usando um script PHP. Como o documento XML pode ser analisado e armazenado em uma matriz associativa é mostrado neste tutorial.
Funções necessárias
Algumas funções internas são usadas para converter o conteúdo XML em uma matriz PHP associativa. Os propósitos de diferentes funções são explicados abaixo.
file_get_contents ():
Esta função retorna os dados da string convertendo qualquer dados XML. É preciso qualquer nome de arquivo xml como argumento.
Simpxml_load_string ():
Esta função retorna o objeto XML convertendo os dados da string xml. São necessários dados de string xml como argumento.
Simpxml_load_file ():
Esta função retorna o objeto XML convertendo o conteúdo do arquivo XML. É preciso o nome do arquivo xml como um argumento.
SimpXMLELEMENT ():
É usado para criar um objeto XML a partir de dados XML. Ele assume o valor do conteúdo XML como um argumento.
JSON_ENCODE ():
Ele retorna o objeto JSON convertendo o objeto XML. É preciso a variável de objeto XML como um argumento.
json_decode ():
Ele retorna a matriz PHP associativa convertendo dados JSON. É preciso a variável de objeto JSON como um argumento.
Crie arquivo XML
Você será obrigado a criar um arquivo XML ou definir dados XML no script para saber o caminho para converter dados XML em uma matriz PHP associativa. Crie um arquivo XML chamado cursos.XML com o seguinte conteúdo e armazená -lo no local onde o script PHP está. O arquivo contém elementos filho sob um elemento pai. Portanto, uma matriz associativa bidimensional será gerada após a conversão do seguinte arquivo XML em uma matriz PHP.
cursos.xml
Exemplo 1: Converta o conteúdo do arquivo XML em uma matriz associativa sem verificar o erro
O script a seguir mostra os usos das funções FILE_GET_CONTENTS () e Simplexml_load_string () para criar objeto XML. Aqui, os cursos.O arquivo XML é usado para conversão que foi criado antes. Em seguida, a função JSON_ENCODE () e JSON_DECODE () são usados para obter a matriz associativa após a conversão do conteúdo do arquivo XML. Se não houver erro no conteúdo XML, nenhum erro será mostrado pelo script a seguir. Aqui, A tag é usada para imprimir a matriz de maneira formatada.
";
print_r ($ Assarray);
eco "
Saída:
A saída a seguir será exibida após a execução do script PHP. Aqui, uma matriz bidimensional é gerada com base no conteúdo do arquivo XML, cursos.xml.
Exemplo-2: Converta o conteúdo do arquivo XML em uma matriz associativa com erro de verificação
É melhor verificar o erro ao converter XML em uma matriz associativa. Ajudará o codificador a depurar o código se a verificação de erros for implementada no script. O script a seguir mostra as maneiras de converter o conteúdo do arquivo xml em uma matriz associativa usando a função Simplexml_load_file () com manuseio de erros. A função libxml_use_internal_errors () é usada com valor verdadeiro para ativar o tratamento de erros. Se o conteúdo do arquivo XML usado no script contiver qualquer erro, a função Simplexml_load_file () retornará falsa, e a mensagem de erro será impressa usando a função libxml_get_errors (). Se não houver erro no arquivo XML, o conteúdo do arquivo será convertido corretamente em uma matriz associativa bidimensional.
// Ative o manuseio de erros do usuário";";
print_r ($ Assarr);
eco "
Saída:
A saída a seguir será exibida após a execução do script PHP. Aqui, não existe erro no arquivo XML. Portanto, uma matriz bidimensional gerou como o exemplo anterior com base no conteúdo do arquivo XML, cursos.xml.
Exemplo 3: Converta o conteúdo XML em uma matriz associativa
O script a seguir mostra a maneira de converter dados XML em uma matriz associativa usando a função Simplexmlelement (). No script, o conteúdo XML é armazenado em uma variável chamada $ xml que é usada como argumento da função, SimpxMlelement (). Em seguida, a função JSON_ENCODE () e JSON_DECODE () são usados para obter a matriz associativa após a conversão do conteúdo do arquivo XML.
// Defina a variável XML";";
print_r ($ Assarray);
eco "
Saída:
A saída a seguir será exibida após a execução do script PHP. Aqui, uma matriz bidimensional é gerada com base no conteúdo da variável XML, $ xml.
Conclusão:
Havia três maneiras diferentes de converter o conteúdo XML em uma matriz associativa que foi mostrada neste tutorial. Isso ajudará os leitores a saber o caminho para trabalhar com dados XML e analisar os dados do conteúdo XML usando um script PHP facilmente.