我如何使用SimpleXML在PHP中实现这一点 例如,找到MD5哈希的响应示例http://md5.noisette.ch/md5.php?hash=2a0231531bc1a7fc29e2fa8d64352ae9 : 2a0231531bc1a7fc29e2fa8d64352ae9 诺塞特 例如,未找到MD5哈希*的响应http://md5.noisette.ch/md5.php?hash=11111111111111111111111111111111 : MD5数据库中没有此哈希的值。 例如,未找到MD5哈希*的响应http://md5.noisette.ch/md5.php?hash=1 : 提供的字符串不是真正的MD5哈希。请再试一次。

我如何使用SimpleXML在PHP中实现这一点 例如,找到MD5哈希的响应示例http://md5.noisette.ch/md5.php?hash=2a0231531bc1a7fc29e2fa8d64352ae9 : 2a0231531bc1a7fc29e2fa8d64352ae9 诺塞特 例如,未找到MD5哈希*的响应http://md5.noisette.ch/md5.php?hash=11111111111111111111111111111111 : MD5数据库中没有此哈希的值。 例如,未找到MD5哈希*的响应http://md5.noisette.ch/md5.php?hash=1 : 提供的字符串不是真正的MD5哈希。请再试一次。,php,xml,simplexml,Php,Xml,Simplexml,好的,我正在学习如何使用SimpleXML。我正在运行一个脚本,从不同的站点运行类似的API,但这是不同的。如果是错误,我不确定如何使用PHP来回显错误;如果是成功,我不确定如何使用字符串来回显错误。我现在使用的API只有true或false,但不管结果如何,它仍然是相同的层次结构 比如说 将找不到该散列。 该散列将返回“test” 正如您所看到的,层次结构将是相同的,因此易于解析和回显我不确定我是否理解您的要求,但您只需将URL加载到SimpleXml并通过常规对象表示法访问节点,例如 Re

好的,我正在学习如何使用SimpleXML。我正在运行一个脚本,从不同的站点运行类似的API,但这是不同的。如果是错误,我不确定如何使用PHP来回显错误;如果是成功,我不确定如何使用字符串来回显错误。我现在使用的API只有true或false,但不管结果如何,它仍然是相同的层次结构

比如说

将找不到该散列。 该散列将返回“test”


正如您所看到的,层次结构将是相同的,因此易于解析和回显

我不确定我是否理解您的要求,但您只需将URL加载到SimpleXml并通过常规对象表示法访问节点,例如

Response example for MD5 hash found, for example http://md5.noisette.ch/md5.php?hash=2a0231531bc1a7fc29e2fa8d64352ae9 :

<md5lookup>
  <hash>2a0231531bc1a7fc29e2fa8d64352ae9</hash>
  <string>noisette</string>
</md5lookup>

Response for MD5 hash *not* found, for example http://md5.noisette.ch/md5.php?hash=11111111111111111111111111111111 :

<md5lookup>
  <error>
    No value in MD5 database for this hash.
  </error>
</md5lookup>

Response for MD5 hash *not* found, for example http://md5.noisette.ch/md5.php?hash=1 :

<md5lookup>
  <error>
    The string provided is not a true MD5 hash. Please try again.
  </error>
</md5lookup>
下面的示例将从URL加载XML并输出错误(如果存在),如果不存在,则输出字符串节点

$parentNode->childNode

哦,对了,我没想到,不知道为什么。谢谢你的帮助,戈登
$baseUrl = 'http://md5.noisette.ch/md5.php?hash=';
$hashes  =  array('2a0231531bc1a7fc29e2fa8d64352ae9',
                  '11111111111111111111111111111111',
                  'not a hash');

foreach($hashes as $hash) {

    // load the XML from the URL
    $dom = simplexml_load_file($baseUrl . $hash);

    if($dom->error) {
        echo $dom->error;
    } else {
        echo $hash, ' : ', $dom->string;
    }

    echo PHP_EOL; // linebreak
}