2010-05-19 17 views
12

मेरे पास एक स्ट्रिंग है जो इस "7a" की तरह दिखती है और मैं इसे हेक्स नंबर 7 ए में परिवर्तित करना चाहता हूं। मैंने पैक और अनपैक का उपयोग करने की कोशिश की है लेकिन यह मुझे प्रत्येक व्यक्तिगत चरित्र के लिए हेक्स प्रतिनिधित्व दे रहा है।मैं एक स्ट्रिंग को कैसे परिवर्तित करूं जो एक हेक्स संख्या की तरह PHP में वास्तविक हेक्स संख्या में दिखता है?

उत्तर

21

शायद सबसे आसान तरीका है स्टोर करने के लिए है कि के रूप में एक पूर्णांक एक नंबर एक नंबर है खैर hexdec()

$num = hexdec('7A'); 
+1

मैं sscanf सुझाव देने के लिए जा रहा था, लेकिन यह बेहतर है। – Artefacto

+0

धन्यवाद यह वही है जो मैं चाहता था। मैंने पहले इस समारोह को देखा लेकिन मुझे गलत समझा गया कि मैंने क्या किया है, इसलिए मैंने सोचा कि यह वही नहीं था जो मैं चाहता था। – cskwrd

+1

मुझे बड़ी संख्या में एक फ्लोट मिला: - | इसके बजाय 'अंतराल' पर विचार करें। –

7

है, यह प्रतिनिधित्व पर निर्भर नहीं करता। आप वास्तविक मूल्य intval() का उपयोग कर प्राप्त कर सकते हैं:

$number = intval('7a', 16); 

हेक्साडेसिमल स्ट्रिंग आप dechex() उपयोग कर सकते हैं करने के लिए वापस संख्या परिवर्तित करने के लिए।

0

कोशिश से यह कर सकते हैं -

function strToHex($string) 
{ 
$hex=''; 
for ($i=0; $i < strlen($string); $i++) 
{ 
    $hex .= dechex(ord($string[$i])); 
} 
return $hex; 
} 
संबंधित मुद्दे