douzaoqu4447 2014-05-22 12:13
浏览 193
已采纳

我怎样才能在PHP中计算出所有数组值的MD5

How I can calculate the MD5 in PHP of the all values of array below:

array(2) {
    ["cabecalho"]=> array(5) {
        ["identificacaoTransacao"]=> array(4) { 
            ["tipoTransacao"]=> string(22) "VERIFICA_ELEGIBILIDADE"
            ["sequencialTransacao"]=> int(1)
            ["dataRegistroTransacao"]=> string(10) "2014-05-22
            ["horaRegistroTransacao"]=> string(8) "17:00:00"
        }
        ["origem"]=> array(1) {
            ["codigoPrestadorNaOperadora"]=> array(1) {
                ["CNPJ"]=> string(14) "XXXXXXXXXXXXXXXX"
            }
        }
        ["destino"]=> array(1) {
            ["codigoPrestadorNaOperadora"]=> array(1) {
                ["CNPJ"]=> string(14) "XXXXXXXXXXXX"
            }
        }
        ["versaoPadrao"]=> string(7) "2.02.03" 
        ["identificacaoSoftwareGerador"]=> array(3) {
            ["nomeAplicativo"]=> string(10) "XXXXXXXXXX"
            ["versaoAplicativo"]=> string(6) "V1.0.0"
            ["fabricanteAplicativo"]=> string(27) "XXXXXXXXXXXXXX"
        }
    }
    ["verificaElegibilidade"]=> array(2) {
        ["dadosPrestador"]=> array(2) {
            ["identificacao"]=> array(1) {
                ["codigoPrestadorNaOperadora"]=> string(8) "XXXXXXXXX"
            } 
            ["nomeContratado"]=> string(26) "XXXXXXXXXXXXXX"
        }
        ["dadosBeneficiario"]=> array(3) {
            ["numeroCarteira"]=> string(9) "XXXXXXXXXX"
            ["nomeBeneficiario"]=> string(22) "XXXXXXXXXXXXXXXXXX"
            ["nomePlano"]=> string(24) "MEDIAL 300 RM OR QC PJCE" 
        }
    }
} 
  • 写回答

4条回答 默认 最新

  • douyan6548 2014-05-27 17:16
    关注

    ... $dom = new DOMDocument; $dom->loadXML($hash); ...

        $mensagemTISS = '';
        $output = array();
        $els = $objDom->getElementsByTagName('*');
        for($i=0;$i<$els->length;$i++) {
                if(! $els->item($i)->hasChildNodes() ) {
                } elseif ($els->item($i)->firstChild->nodeType == 3 ) {
                        $tmp = $els->item($i)->textContent;
                        if ( preg_replace('/\s+/', '', $tmp) ) {
                                $tmp = preg_replace('/\s+/', '', $tmp);("
    ", "", $tmp);
                        }
                        $mensagemTISS = $mensagemTISS . ($tmp);
                }
        }
        echo '<hr>HASH: <pre>'.$mensagemTISS.'</pre><hr>';
        return md5($mensagemTISS);
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥50 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?