PHP में, मेरे पास 0-65535 के मानों के साथ कुछ पूर्णांक चर हैं। मुझे स्ट्रिंग "1281" प्रिंटिंग जैसे कच्चे बाइनरी मान जैसे अक्षरों के मुद्रित अनुक्रम के रूप में सीधे इसे गूंज/प्रिंट करने की आवश्यकता नहीं है। इसके अलावा मुझे इसकी आवश्यकता है ताकि आउटपुट में भेजे गए द्विआधारी पूर्णांक हमेशा 2 बाइट्स हों (यदि आवश्यक हो तो शून्य बाइट भेजे गए ताकि यह हमेशा 2 बाइट्स हो)। मैं php में यह कैसे करूँ?PHP में उत्पादन कच्चे बाइनरी पूर्णांक
5
A
उत्तर
0
एक नज़र @ इस लिंक लें: http://php.about.com/od/phpfunctions/p/PHPbase_convert.htm
3
हाँ, यह संभव है, pack का उपयोग करें।
5
म्यू के जवाब पर विस्तार से बता दें आप चाहते हैं:
pack("S", $num));
उदा .:
file_put_contents("test65535.bin", pack("S", 65535));
file_put_contents("test100.bin", pack("S", 100));
file_put_contents("test0.bin", pack("S", 0));
hexdump test65535.bin
0000000 ffff
0000002
hexdump test100.bin
0000000 0064
0000002
hexdump test0.bin
0000000 0000
0000002
कच्चे बाइनरी मान एक सर्किट के अंदर उच्च और निम्न बिजली वोल्टेज का एक सेट है। इंसानों को समझने के तरीके में आप उन वोल्टेज का प्रतिनिधित्व कैसे करना चाहेंगे? आप वास्तव में एक स्ट्रिंग प्रतिनिधित्व मुद्रित नहीं करना चाहते हैं, आप बस संख्या के एक अलग स्ट्रिंग प्रतिनिधित्व मुद्रित करना चाहते हैं। आप आधार 10 के बजाय बेस 2 में लिखे गए नंबर को देखने के लिए कह रहे हैं। दोनों वोल्टेज के स्ट्रिंग प्रस्तुतियां हैं। –
@ डैन, उन्होंने कच्चे माल की मांग की, कच्चे बिजली की मांग नहीं की। उन्होंने कभी नहीं कहा कि वह एक स्ट्रिंग नहीं चाहते थे, बस वह एएससीआईआई अंकों के पात्रों की एक स्ट्रिंग नहीं चाहते थे। –
@ डैन: वह मूल रूप से PHP के इस बिट के बराबर चाहता है: 'fwrite (और some_int16_value, sizeof (int16_t), 1, fp) '। कम से कम यह मेरे लिए इस तरह से पढ़ता है। –