दिलचस्प पोस्ट
PHP move_uploaded_file () त्रुटि? appdelegate में प्रारंभिक दृश्य नियंत्रक सेट – तेज नियमित अभिव्यक्ति में एक अग्रेषित स्लैश से बचें Google विज़ुअलाइज़ेशन चार्ट एपीआई उदाहरण टूट गए हैं, उन्हें ठीक कैसे करें? कई पंक्तियों के लिए अंतिम डाले गए आईडी प्राप्त करना मेथमैटिका में रनटाइम त्रुटियों के हिमस्खलन को रोकना 'फू' इस स्कोप में घोषित नहीं किया गया था सी ++ SSRS – एक सरल मल्टी-कॉलम रिपोर्ट कैसे तैयार करें? IntelliJ IDEA में ऑटो त्रुटियों का पता लगाने एक वर्ग क्यों मुहर? Tensorflow में परत-वार सीखने की दर कैसे सेट करें? कैसे वापस पिछले स्थान पर स्थानांतरित करने के लिए? (अलग सिर) जीयूआई पर एक अन्य धागा से पाठ बॉक्स को अपडेट कैसे करें क्या JSR-303 (बीन सत्यापन) का कार्यान्वयन उपलब्ध है? प्रत्येक कॉलम सेल के लिए स्तंभ कक्षों का विस्तार करना

पीएचपी का प्रयोग यूआरएल में% 20 में स्थान बदलें

मैं% 20 के साथ यूआरएल में रिक्त स्थान के सभी उदाहरणों को बदलना चाहता हूं मैं कैसे regex के साथ ऐसा करूँगा?

धन्यवाद!

Solutions Collecting From Web of "पीएचपी का प्रयोग यूआरएल में% 20 में स्थान बदलें"

यहां str_replace() कोई ज़रूरत नहीं है, यदि आप किसी स्ट्रिंग के किसी दूसरे स्थान को बदलना चाहते हैं: str_replace() का उपयोग करना पर्याप्त से अधिक होना चाहिए:

 $new = str_replace(' ', '%20', $your_string); 

लेकिन, यदि आप उस से थोड़ी अधिक चाहते हैं, और आप शायद करते हैं, यदि आप यूआरएल के साथ काम कर रहे हैं, तो आपको urlencode() फ़ंक्शन पर एक नज़र रखना चाहिए।

अपने खुद के लागू करने की कोशिश करने के बजाय urlencode() उपयोग करें आलसी रहो।

मुझे लगता है कि आपको अपने उद्देश्य के लिए urlencode () बजाय rawurlencode () का उपयोग करना चाहिए।

नमूना

 $image = 'some images.jpg'; $url = 'http://example.com/' 

Urlencode ($ str) के साथ परिणाम होगा

 echo $url.urlencode($image); //http://example.com/some+images.jpg 

इसकी बदली में% 20 बिल्कुल नहीं है

लेकिन rawurlencode ($ छवि) के साथ उत्पादन होगा

 echo $url.rawurlencode(basename($image)); //http://example.com/some%20images.jpg 

आपके पास कई विकल्प हैं कि यह कैसे करें, या तो:

  • urlencode() या rawurlencode()rawurlencode() प्रोटोकॉल के लिए यूआरऍल को एन्कोड करने के लिए डिजाइन किए गए फ़ंक्शन
  • str_replace() – "भारी मशीनरी" स्ट्रिंग की जगह
  • strtr() – में एकाधिक वर्णों की जगह ले जाने पर str_replace() तुलना में बेहतर प्रदर्शन होगा
  • preg_replace() नियमित अभिव्यक्ति (पर्ल संगत) का उपयोग करें

strtr()

मान लें कि आप "\t" और "%20" साथ "%20" " " बदलना चाहते हैं:

 $replace_pairs = array( "\t" => '%20', " " => '%20', ); return strtr( $text, $replace_pairs) 

preg_replace()

आपके पास यहां कुछ विकल्प हैं, या तो बस स्थान की जगह ~ ~ , फिर जगह और टैब की जगह ~[ \t]~ या सभी प्रकार की रिक्त स्थान ~\s~ :

 return preg_replace( '~\s~', '%20', $text); 

या जब आपको स्ट्रिंग को "\t \t \t \t" जैसे सिर्फ एक %20 साथ बदलना होगा:

 return preg_replace( '~\s+~', '%20', $text); 

मुझे लगता है कि आप वास्तव में मैन्युअल स्ट्रिंग प्रतिस्थापन का उपयोग करना चाहते हैं और अधिक प्रकार के व्हाइटस्पेस जैसे गैर ब्रेकएबल स्पेस (   ) को संभाल करना चाहते हैं

 $result = preg_replace('/ /', '%20', 'your string here'); 

आप उपयोग करने पर भी विचार कर सकते हैं

 $result = urlencode($yourstring) 

अन्य विशेष अक्षरों से बचने के लिए भी