मुझे एरे का उपयोग करते समय PHP फ़ंक्शन str_replace
के साथ कुछ परेशानी हो रही है।सरणी के साथ str_replace
मैं इस संदेश है:
$message = strtolower("L rzzo rwldd ty esp mtdsza'd szdepw ty esp opgtw'd dple");
और मैं str_replace
इस तरह उपयोग करने के लिए कोशिश कर रहा हूँ:
$new_message = str_replace(
array('l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','a','b','c','d','e','f','g','h','i','j','k'),
array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'),
$message);
परिणाम A good glass in the bishop's hostel in the devil's seat
होना चाहिए, लेकिन इसके बजाय, मैं p voos vlpss xn twt qxswop's wosttl xn twt stvxl's stpt
मिलता है।
हालांकि, जब मैं केवल 2 पत्र की जगह की कोशिश यह उन्हें अच्छी तरह से बदल देता है:
$new_message = str_replace(array('l','p'), array('a','e'), $message);
पत्र l
और p
a
और e
से बदल दिया जाएगा।
यह पूर्ण वर्णमाला सरणी के साथ क्यों काम नहीं कर रहा है यदि वे दोनों एक ही आकार के हैं?
ध्यान दें, आप ऊपरी और निचले मामले के लिए यह काम बस '$ new_message = strtr करके ('lmnopqrstuvwxyzabcdefghijkLMNOPQRSTUVWXYZABCDEFGHIJK', $ संदेश 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ',) कर सकता है;' –
@TheSmose धन्यवाद, मैं मैंने भी कहा है! – LautaroAngelico