【发布时间】:2017-03-30 05:27:24
【问题描述】:
也许这是一个以前回答过的问题,但我在 Web 开发中很菜鸟。 我正在尝试从此页面获取完整的 XML 文本:
而且,我需要在该代码中执行一些 XPath 查询,例如“获取 ID”等。 例如:
//eSearchResult/IdList/Id/node()
如何获取 php 对象中的完整 XML 以通过 XPath 查询请求数据?
我之前用过这段代码:
<?php
$text = $_REQUEST['text'];
$xmlId = simplexml_load_file('https://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi?db=gene&term='.$text.'%5bGene%20Name%5d+AND+%22Homo%20sapiens%22%5bOrganism');
$id = $xmlId->IdList[0]->Id;
$xmlGeneralData = simplexml_load_file('https://eutils.ncbi.nlm.nih.gov/entrez/eutils/esummary.fcgi?db=gene&id='.$id.'&retmode=xml');
$geneName = $xmlGeneralData->DocumentSummarySet->DocumentSummary[0]->Name;
$geneDesc = $xmlGeneralData->DocumentSummarySet->DocumentSummary[0]->Description;
$geneChromosome = $xmlGeneralData->DocumentSummarySet->DocumentSummary[0]->Chromosome;
echo "Id: ".$id."\n";
echo "Name: ".$geneName."\n";
echo "Description: ".$geneDesc."\n";
echo "Chromosome: ".$geneChromosome."\n";?>
但是,根据教授的说法,这段代码不使用 Xpath 查询,需要页面使用它。
有人可以帮助我或解释我该怎么做吗?
【问题讨论】: