questions - php tutorial pdf



इस अजीब सरणी कुंजी निर्माण में यह बिटवाइज़ या क्या कर रहा है? (2)

क्या कोई मुझे समझा सकता है कि इसका क्या मतलब है ?? मैंने इस निर्माण को कभी नहीं देखा - Prestashop डॉक्टर से लिया

foreach ( $languages as $language )
{
  echo '<div id="test_' . $language['id_lang'|'id_lang'] .... // <-- What the??
  // ... 
}

$ भाषा में निम्नलिखित कुंजियाँ हैं:

Array
(
    [id_lang] => 1
    [name] => English (English)
    // and others... 
)

परिणाम यह है कि यह $ भाषा का मूल्य लेता है ["id_lang"] - 1. लेकिन मैं वाक्य रचना को नहीं समझता और इसके बारे में कोई दस्तावेज नहीं ढूंढ सकता।


Answer #1

यह php -a सत्र दर्शाता है कि यह पूरी तरह से व्यर्थ है:

php > $value = 'something'|'something';
php > echo $value;
something
php > $arr = array('abc' => 1, 'def' => 2);
php > echo $arr['abc'|'abc'];
1
php > echo $arr['def'|'def'];
2

मूल रूप से, यदि आप अपने आप से "बिटवाइज़ या" कुछ भी करते हैं, तो आपको मूल मूल्य मिलता है। इस गुण को गणित में आलस्य कहते हैं। अधिक जानकारी के लिए, पढ़ें:

ईमानदारी से, उस कोड के मूल लेखक को पता नहीं था कि वे क्या कर रहे थे।


Answer #2

यह कुछ भी नहीं कर रहा है, अजीब तरह से।

var_dump('id_lang'|'id_lang');
#=> string(7) "id_lang"

http://ideone.com/zXdRMO

यहां तक ​​कि अगर यह कुछ कर रहा था, तो एक स्ट्रिंग-आधारित सरणी कुंजी पर बिटवाइज़ ऑपरेटर का उपयोग करना निश्चित रूप से मुझे कोड गंध की तरह लगता है।





php