2010-03-24 12 views

उत्तर

40

PHP के रूप में 5.4+ द्विआधारी संख्या के लिए उपसर्ग है:

0b 


ealier संस्करण के लिए, ऐसी कोई उपसर्ग है। इसके बजाय, आप हेक्साडेसिमल के लिए 0x का उपयोग कर सकते हैं।

अधिक जानकारी के लिए, Integers section of the PHP manual देखें।

फिर भी, यदि आपको वास्तव में PHP 5.4 से पहले बाइनरी का उपयोग करके मूल्य लिखने की आवश्यकता है, तो आप bindec फ़ंक्शन का उपयोग कर सकते हैं, जो बाइनरी युक्त एक स्ट्रिंग लेता है, और संबंधित मान देता है।

उदाहरण के लिए

, कोड की निम्न भाग:

echo bindec('10011'); 

आप प्राप्त करेंगे:

19 

लेकिन ध्यान दें आपको लगता है कि ऐसा नहीं करना चाहिए भी अक्सर: एक समारोह बुला हर बार ऐसा करने के लिए स्क्रिप्ट निष्पादित किया जाता है प्रदर्शन के लिए काफी बुरा है ^^
इसके बजाय, हेक्साडेसिमल का उपयोग करके अपने मूल्यों को लिखना वास्तव में एक बेहतर समाधान है, जहां प्रत्येक बिट कोड 4 बिट्स के लिए कोड हैं।

+0

यह सुनकर खेद है ... लेकिन आप वैकल्पिक समाधान देने वाले पहले व्यक्ति हैं :) – user198729

+0

ब्रैड कोच वर्णन करता है कि वहां कैसा है PHP 5.4 –

2

PHP 5.4+ से, वास्तव में, एक उपसर्ग है: 0b

PHP Docs में वर्तमान जानकारी:

बाइनरी पूर्णांक शाब्दिक पीएचपी 5.4.0 के बाद से उपलब्ध हैं।

ऑक्टल नोटेशन का उपयोग करने के लिए, 0 (शून्य) के साथ संख्या से पहले। हेक्साडेसिमल नोटेशन का उपयोग करने के लिए 0x के साथ संख्या से पहले। बाइनरी नोटेशन का उपयोग करने के लिए 0 बी के साथ संख्या से पहले।


मार्च 24 '10 11:31 (मूल जवाब) पर:

मुझे नहीं लगता कि वहाँ एक है। उपसर्ग 0 अगर ऑक्टल और 0x हेक्साडेसिमल के लिए है।

PHP docs से

:

पूर्णांक दशमलव (आधार 10), हेक्साडेसिमल (आधार 16), या अष्टाधारी (आधार 8) अंकन, वैकल्पिक रूप से एक संकेत से पहले में निर्दिष्ट किया जा सकता (- या +)।

ऑक्टल नोटेशन का उपयोग करने के लिए, 0 (शून्य) के साथ संख्या से पहले। हेक्साडेसिमल नोटेशन का उपयोग करने के लिए 0x के साथ संख्या से पहले।

1

the manual जांचें: PHP केवल दशमलव, हेक्साडेसिमल और ऑक्टल पूर्णांक नोटेशन का समर्थन करता है, लेकिन आप इसके बजाय bindec() का उपयोग कर सकते हैं।

इसके अलावा, ध्यान रखें कि प्रत्येक हेक्स अंक 4 बिट्स का प्रतिनिधित्व करता है, इसलिए बाइनरी नोटेशन और हेक्स के बीच कनवर्ट करना आसान है। यह ऑक्टल के लिए भी सच है, लेकिन विभिन्न कारणों से इसका प्रयोग अभ्यास में अक्सर कम होता है।

47

New in PHP 5.4 बाइनरी उपसर्ग, 0b है। हालांकि इसका उपयोग करते समय पोर्टेबिलिटी के बारे में सोचें; आपको सर्वर की गारंटी देने में सक्षम होना होगा कि PHP 5.4+ चलाता है।

+4

के साथ एक उपसर्ग आजकल एकमात्र सही उत्तर है। – Gangnus

+0

प्रश्न स्वीकृत होने के समय स्वीकृत उत्तर सही हो सकता है, लेकिन वर्तमान में यह सही जवाब है, ब्रैड उत्तर का समर्थन करने के लिए सिर्फ एक लिंक: http://php.net/manual/en/language.types.integer। php –

संबंधित मुद्दे