में समतुल्य php chr() और ord() फ़ंक्शंस क्या है, मैंने php कोड में bitwise ऑपरेटर का उपयोग किया है जो बेस 64 में डीकोड स्ट्रिंग को वापस करता है। मैं उस PHP कोड को जावास्क्रिप्ट के समान ही कार्यान्वित करना चाहता हूं। मेरे ज्ञान के अनुसार chr()
String.fromCharCode(n)
और ord()
के समतुल्य n.charCodeAt(0)
है। लेकिन दोनों अंतिम आउटपुट भिन्न हैं।जावास्क्रिप्ट
PHP कोड: -
<?php
$pass = "RuvEtrUt74gaDR5DufuChe";
$en = "";
foreach(str_split($pass) as $chr){
$b1=((($chr = ord($chr)) >> 1) & 0xFF);
$b2=($chr << (8 - 1));
$en = $en.chr($b1|$b2);
}
$en = base64_encode($en); //Output:-)º;¢:9ª:›³°")š"º3º¡4²
echo ($en);
echo (base64_decode($en)); //Output:- Kbo7ojo5qjqbGrOwIimaIrozuqE0sg==
जावास्क्रिप्ट कोड में: -
var pass = "RuvEtrUt74gaDR5DufuChe";
var en = "";
var passArr = pass.split('');
for (var i = 0; i < passArr.length; i++) {
var b1 = (((passArr[i] = passArr[i].charCodeAt(0)) >> 1) & 0xFF);
var b2 = (passArr[i] << (8 - 1));
en += chr(b1 | b2);
}
console.log('en',en);//Output:- ⤩㪺㬻⊢㨺㤹⪪㨺ᮛᨚ㎳グ∢⤩∢㪺㌳㪺↡㐴㊲
en = window.btoa(unescape(encodeURIComponent(en)));
console.log('en', en);//Output:- 4qSp46q646y74oqi46i646S54qqq46i64a6b4aia446z44Kw4oii4qSp4aqa4oii46q644yz46q64oah45C044qy
//need same as in php i.e, :- Kbo7ojo5qjqbGrOwIimaIrozuqE0sg==
function chr(codePt) {
if (codePt > 0xFFFF) {
codePt -= 0x10000
return String.fromCharCode(0xD800 + (codePt >> 10), 0xDC00 + (codePt & 0x3FF))
}
return String.fromCharCode(codePt)
}
आप Javscript उत्पादन ऊपर देख सकते हैं php उत्पादन से मतभेद है। मुझे जावास्क्रिप्ट में सटीक आउटपुट की आवश्यकता है जो PHP कोड में वापस आती है। धन्यवाद