我试图从namecheap解析以下经过处理的api响应:
<ApiResponse xmlns="http://api.namecheap.com/xml.response" Status="OK">
<Errors/>
<Warnings/>
<RequestedCommand>namecheap.domains.getlist</RequestedCommand>
<CommandResponse Type="namecheap.domains.getList">
<DomainGetListResult>
<Domain ID="########" Name="website1.com" User="user1" Created="08/18/2014" Expires="08/18/2016" IsExpired="false" IsLocked="false" AutoRenew="false" WhoisGuard="NOTPRESENT"/>
<Domain ID="########" Name="website2.com" User="user1" Created="08/25/2015" Expires="08/24/2016" IsExpired="false" IsLocked="false" AutoRenew="false" WhoisGuard="NOTPRESENT"/>
</DomainGetListResult>
<Paging>
<TotalItems>2</TotalItems>
<CurrentPage>1</CurrentPage>
<PageSize>20</PageSize>
</Paging>
</CommandResponse>
<Server>Servername</Server>
<GMTTimeDifference>--4:00</GMTTimeDifference>
<ExecutionTime>0.034</ExecutionTime>
</ApiResponse>
这是到目前为止我得到的最接近的,但它仍然不是它。
$url="https://api.namecheap.com/xml.response?ApiUser=user1&ApiKey=StackExchangeRocks&UserName=user1&Command=namecheap.domains.getList&ClientIp=127.0.0.1";
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url); // get the url contents
$data = curl_exec($ch); // execute curl request
curl_close($ch);
$xml = simplexml_load_string($data);
foreach ($xml->CommandResponse->DomainGetListResult->Domain as $domain) {
echo $domain->Name, PHP_EOL;
}
几乎我做的任何事情都会遇到一个错误,说没有找到一个对象,或者根本没有响应。
所有我需要做的是能够提取域名,以便能够将它们存储在数据库中。什么好主意吗?
虽然我还没有很高兴(还没有)广泛使用这个PHP 是否支持文档对象模型
https://php.net/dom