MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

PHP स्ट्रिंग को 24 वर्णों से 20 . तक संपीड़ित (छोटा) करें

आपके संदर्भित पृष्ठ पर मैं जो देख रहा हूं, उसमें से 24-वर्ण हेक्साडेसिमल हैं। अगर ग्राहक-आईडी अक्षरांकीय हो सकता है तो आप base_convert का उपयोग कर सकते हैं संख्या को छोटा करने के लिए। दुर्भाग्य से पूर्ण संख्या> 32 बिट है, इसलिए आपको इसे काम करने के लिए भागों में छिपाना होगा:

// Pad with 0's to make sure you have 24 chars
$padded = str_repeat('0', 24 - strlen($mongoId)) . $mongoId;
$leastSignificant = base_convert(substr($padded, 14, 10), 16, 32); // will be 8 chars most
$middleSignificant = base_convert(substr($padded, 4, 10), 16, 32); // will be 8 chars most
$highSignificant = base_convert(substr($padded, 0, 4), 16, 32); // will be 4 chars most

// Concatenate, and make sure everything is correctly padded
$result = str_repeat('0', 4 - strlen($highSignificant)) . $highSignificant .
          str_repeat('0', 8 - strlen($middleSignificant )) . $middleSignificant .
          str_repeat('0', 8 - strlen($leastSignificant )) . $leastSignificant;
echo strlen($result); // Will echo 20

// Reverse the algoritm to retrieve the mongoId for a given customerId 



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB में थोक FindAndModify का समाधान

  2. MongoDB में लिफ्ट स्टोर BigDecimal

  3. कैसे गतिशील रूप से नेवला स्कीमा बनाने के लिए?

  4. MongoDB तक कैसे पहुँचें

  5. मोंगोडब सबलेमेंट क्वेरी