簡體   English   中英

我如何使用SimpleXML在PHP中回顯此問題

[英]How would I echo this in PHP using 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>

好的,我只是在學習如何使用SimpleXML。 我正在運行一個腳本,以從不同站點運行相似的API,但這是不同的。 我不確定如何使用PHP來回顯錯誤(如果是錯誤)或字符串(如果成功)。 我現在使用的API的值為true或false,但無論結果如何,其層次結構都相同。

例如

http://gdataonline.com/qkhash.php?mode=xml&hash=notanactualhashandwillnotbefound將不會找到該哈希。 http://gdataonline.com/qkhash.php?mode=xml&hash=098f6bcd4621d373cade4e832627b4f6該哈希將返回“測試”

如您所見,層次結構是相同的,因此易於解析和回顯

我不確定我是否理解您的要求,但是您只需將URL加載到SimpleXml並通過常規對象表示法訪問節點,例如

$parentNode->childNode

下面的示例將從URL加載XML並輸出錯誤(如果存在),否則輸出字符串節點。

$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
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM