public static function compareLicense($fromText, $toText) { $from_text = mb_convert_encoding($fromText, 'HTML-ENTITIES', 'UTF-8'); $to_text = mb_convert_encoding($toText, 'HTML-ENTITIES', 'UTF-8'); $granularity = FineDiff::$wordGranularity; $diff_opcodes = FineDiff::getDiffOpcodes($from_text, $to_text, $granularity); self::$diffLength = strlen($diff_opcodes); $rendered_diff = FineDiff::renderDiffToHTMLFromOpcodes($from_text, $diff_opcodes); return $rendered_diff; }
} // Compare original license file with standard license files $diffOpcodeArr = array(); $minDiff = 0; $minKey = 0; $maxRatio = 0; $maxKey = 0; $curl_resultProcessed = trim($originalfilecontent); $curl_resultProcessed = trim(preg_replace('/\\s+/', ' ', $curl_resultProcessed)); $curl_resultProcessed = preg_replace('/s(?=s)/', '', $curl_resultProcessed); $curl_resultProcessed = htmlspecialchars_decode($curl_resultProcessed); foreach ($keyFiles as $key => $value) { $licenseProcessedFile = trim($licensecollection[$value]); $licenseProcessedFile = preg_replace('/s(?=s)/', '', $licenseProcessedFile); $licenseProcessedFile = trim(preg_replace('/\\s+/', ' ', $licenseProcessedFile)); array_push($diffOpcodeArr, LicenseDiff::compareLicense($licenseProcessedFile, $curl_resultProcessed)); if (LicenseDiff::$diffLength < $minDiff || $minDiff == 0) { $minDiff = LicenseDiff::$diffLength; $minKey = $key; } } $comparedStandardLicenseFileContent = $diffOpcodeArr[$minKey]; if (verifyPass($comparedStandardLicenseFileContent, $licensecollection[$keyFiles[$minKey]])) { $ln = substr($keyFiles[$minKey], 0, strrpos($keyFiles[$minKey], ".")); InsertRecords($urlText, "pass", $proName, $proSite, $proVer, $ipAddr, $protocoltype, $conn, $logger, $loghelperArr); InsertPassRecords($urlText, "pass", $proName, $proSite, $proVer, $ipAddr, $protocoltype, $ln, $conn, $logger, $loghelperArr); $certID = GetCertID($urlText, $proName, $proVer, $conn, $logger, $loghelperArr); $certDate = GetCertDate($urlText, $proName, $proVer, $conn, $logger, $loghelperArr); $ln = substr($keyFiles[$minKey], 0, strrpos($keyFiles[$minKey], ".")); echo "<div>\r\n <div id=\"checkwithfailed\">\r\n <span id=\"titleresult\">评估结果:</span>\r\n <span id=\"resultsentencepass\">评估通过!</span>\r\n </div>\r\n <div class=\"permanent-link\">证书永久Link: <a href='/gethistory.php?certID={$certID}'>点这里</a></div>\r\n <div class=\"star-content\">\r\n <div class=\"left-arrow\"></div>\r\n <div class=\"right-arrow\"></div>\r\n <div class=\"star-inner\">\r\n <div class=\"star-badge\"></div>\r\n <div class=\"star-text\">\r\n <h1>开源之星认证</h1>\r\n <h2>"; echo $proName;