使用Name.com API(PHP)
我现在正在使用Name.com API,他们有关于如何获取详细信息的文档说明 我把一切都做好了,但是我不能打印结果 我已经完成了var_dump()调试,结果如下:使用Name.com API(PHP),php,api,class,Php,Api,Class,我现在正在使用Name.com API,他们有关于如何获取详细信息的文档说明 我把一切都做好了,但是我不能打印结果 我已经完成了var_dump()调试,结果如下: object(stdClass)#4 (2) { ["result"]=> object(stdClass)#5 (2) { ["code"]=> int(100) ["message"]=> string(18) "Command Successful" } ["d
object(stdClass)#4 (2) {
["result"]=> object(stdClass)#5 (2) {
["code"]=> int(100) ["message"]=> string(18) "Command Successful"
}
["domains"]=> object(stdClass)#6 (8) {
["mynewdomain.mobi"]=> object(stdClass)#7 (5) {
["avail"]=> bool(true)
["tld"]=> string(4) "mobi"
["price"]=> string(4) "8.99"
["premium"]=> bool(false)
["backorder"]=> bool(false)
}
["mynewdomain.net"]=> object(stdClass)#8 (5) {
["avail"]=> bool(false)
["tld"]=> string(3) "net"
["price"]=> string(5) "49.95"
["premium"]=> bool(false)
["backorder"]=> bool(true)
}
["mynewdomain.org"]=> object(stdClass)#9 (5) {
["avail"]=> bool(true)
["tld"]=> string(3) "org"
["price"]=> string(4) "9.99"
["premium"]=> bool(false)
["backorder"]=> bool(false)
}
["mynewdomain.info"]=> object(stdClass)#10 (5) {
["avail"]=> bool(true)
["tld"]=> string(4) "info"
["price"]=> string(4) "3.99"
["premium"]=> bool(false)
["backorder"]=> bool(false)
}
["mynewdomain.com"]=> object(stdClass)#11 (5) {
["avail"]=> bool(false)
["tld"]=> string(3) "com"
["price"]=> string(5) "49.95"
["premium"]=> bool(false)
["backorder"]=> bool(true)
}
["mynewdomain.biz"]=> object(stdClass)#12 (5) {
["avail"]=> bool(false)
["tld"]=> string(3) "biz"
["price"]=> string(5) "29.95"
["premium"]=> bool(false)
["backorder"]=> bool(true)
}
["mynewdomain.me"]=> object(stdClass)#13 (5) {
["avail"]=> bool(false)
["tld"]=> string(2) "me"
["price"]=> string(5) "49.95"
["premium"]=> bool(false)
["backorder"]=> bool(true)
}
["mynewdomain.tv"]=> object(stdClass)#14 (5) {
["avail"]=> bool(false)
["tld"]=> string(2) "tv"
["price"]=> string(5) "49.95"
["premium"]=> bool(false)
["backorder"]=> bool(true)
}
}
}
这是列出域的另一个简短结果:
object(stdClass)#4 (2) {
["result"]=> object(stdClass)#5 (2) {
["code"]=> int(100)
["message"]=> string(18) "Command Successful"
}
["domains"]=> array(0) { }
}
我尝试了以下方法:
echo$response
echo$response->domains
echo$response['domains']
提前感谢,在我看来,所有内容首先都在一个
结果中。试试这个:
echo $response["result"]["domains"];
在我看来,一切首先都在一个结果数组中。试试这个:
echo $response["result"]["domains"];
请尝试此选项以获取消息:
echo $response->result->message;
要获取域列表,请执行以下操作:
foreach ($response->domains as $domainName => $domainData)
{
echo $domainName.": available-".$domainData->avail."; price - ".$domainData->price;
}
请尝试此选项以获取消息:
echo $response->result->message;
要获取域列表,请执行以下操作:
foreach ($response->domains as $domainName => $domainData)
{
echo $domainName.": available-".$domainData->avail."; price - ".$domainData->price;
}
看起来您要取回一堆对象,因此需要遍历$response->domains。我会将其推到一个新的var,以便于处理,如:
$domains = &$response->domains;
foreach($domains as $key => $value) {
echo $key.":\n";
foreach($value as $a => $b) {
if($b === true) $b = 'yes';
if($b === false) $b = 'no';
echo $a.": ".$b."\n";
}
}
注意:$response->result只包含您发送给服务器的命令的结果。检查以确保没有出现错误,但不要期望数据出现在那里。看起来您要取回一堆对象,因此需要遍历$response->domains。我会将其推到一个新的var,以便于处理,如:
$domains = &$response->domains;
foreach($domains as $key => $value) {
echo $key.":\n";
foreach($value as $a => $b) {
if($b === true) $b = 'yes';
if($b === false) $b = 'no';
echo $a.": ".$b."\n";
}
}
注意:$response->result只包含您发送给服务器的命令的结果。检查以确保您没有出错,但不希望您的数据在其中。域
不是结果的子元素
未工作:致命错误:无法将stdClass类型的对象用作arrayHmmm,抱歉,当我回答时,我没有注意到输出何时在一行上。domains
不是result
的子元素未工作:致命错误:无法将stdClass类型的对象用作arrayHmmm,对不起,我回答时没有注意到输出何时在一行上。我已经尝试了这一点,并得到了一个白色页面,通过调试,我得到:array(0){你能做一个序列化($response);-回显并发布它,这样我就可以将该类放入测试页面并查看发生了什么?结果已经出来,但所有域都可用:example.orgstdClass对象([avail]=>[tld]=>org[price]=>49.95[premium]=>[backorder]=>1)example.netstclass对象([avail]=>[tld]=>net[price]=>49.95[premium]=>backorder]=>1)example.infostdClass对象([avail]=>[tld]=>info[price]=>49.95[premium]=>[backorder]=>1)example.mobistdClass对象([avail]=>[tld]=>mobi[price]=>49.95[premium]=>[backorder]=>1)
好吧,看来它可以用了,我会编辑我的答案来处理域中的对象。谢谢,我试过你编辑过的代码,得到了所有的对象,但是之前的问题是一样的,所有的域都是可用的,结果是:google.com:avail:tld:com价格:9.99高级:backorder:
这里还有序列化:O:8:stdClass:2:{s:6:result;O:8:stdClass:2:{s:4:code;I:100;s:7:message;s:18:Command Successful”}s:7:“域”;O:8:“stdClass”:8:{s:10:“google.net”;O:8:“stdClass”:5:{s:5:“avail”;b:0;s:3:“tld”;s:3:“net”;s:5:“price”;s:5:“49.95”;s:7:“premium”;b:0;s:9:“backorder”;b:1;}
我已经尝试过了,得到了一个白页,通过调试,我得到了:array(0){}你能做一个序列化($response);-回显并发布它,这样我就可以将该类放入测试页面并查看发生了什么?结果已经出来,但所有域都可用:example.orgstdClass对象([avail]=>[tld]=>org[price]=>49.95[premium]=>[backorder]=>1)example.netstclass对象([avail]=>[tld]=>net[price]=>49.95[premium]=>backorder]=>1)example.infostdClass对象([avail]=>[tld]=>info[price]=>49.95[premium]=>[backorder]=>1)example.mobistdClass对象([avail]=>[tld]=>mobi[price]=>49.95[premium]=>[backorder]=>1)
好吧,看来它可以用了,我会编辑我的答案来处理域中的对象。谢谢,我试过你编辑过的代码,得到了所有的对象,但是之前的问题是一样的,所有的域都是可用的,结果是:google.com:avail:tld:com价格:9.99高级:backorder:
这里还有序列化:O:8:stdClass:2:{s:6:result;O:8:stdClass:2:{s:4:code;I:100;s:7:message;s:18:Command Successful”}s:7:“域名”;O:8:“标准类”:8:{s:10:“google.net”;O:8:“标准类”:5:{s:5:“avail”;b:0;s:3:“tld”;s:3:“net”;s:5:“price”;s:5:“49.95”;s:7:“premium”;b:0;s:9:“backorder”;b:1;}}
我成功地收到了消息,但列表给了我白页。@MohamedMagdy你试过下面的代码了吗$domainData是StdClass对象。在我尝试使用check_domain检查列表_域时,再次尝试了它,消息成功发送,但所有域都可用,它没有检查。@第二个示例域中的MohamedMagdy是空数组。我发布了第一个示例的代码,其中域是stdClass对象。您可以用第二个数据检查它吗?我已经为这个$response=$api->check_domain('example')尝试了您的代码代码>它成功地处理了列表和价格,但所有都可用,您想让我向您发送包含所有类的完整API吗?我成功地收到消息,但列表给了我白页。@MohamedMagdy您尝试过我下面的代码了吗$domainData是StdClass对象。在我尝试使用check_domain检查列表_域时,再次尝试了它,消息成功发送,但所有域都可用,它没有检查。@第二个示例域中的MohamedMagdy是空数组。我发布了第一个示例的代码,其中域是stdClass对象。您可以用第二个数据检查它吗?我已经为这个$response=$api->check_domain('example')尝试了您的代码代码>它成功地处理了列表和价格,但是所有的都可用,你想让我给你发送包含所有类的完整API吗?