जब मैं अपनी अनुक्रमणिका के साथ सीधे सरणी तत्व तक पहुंचने का प्रयास कर रहा था तो मुझे उलझन में आया। मुझे लगता है मैं कोडिंग में बेहतर समझा जा सकता है: -मैं सीधे इंडेक्स के साथ सरणी का उपयोग क्यों नहीं कर सकता?
मैं कर्मचारी वर्ग की एक वस्तु हो रहा है और मैं इसे सरणी टाइपकास्ट और इस तरह यह प्रदर्शित करने के लिए करने की कोशिश की:
$arrOfObj = (array) $objEmployee;
$arrKeys = array_keys($arrOfObj);
display($arrOfObj); // display() is a method in my library that prints an array in a mannered way.
यह मेरे निम्नलिखित उत्पादन देता है : -
Array
(
[*m_UserId] => 1155
[*m_EmailPassword] =>
[*m_IsAssignedToManagementCompany] =>
[*m_ManagementCompanyId] =>
[*m_DepartmentId] => 3
[*m_DesignationId] => 4
[*m_EmployeeCompletedMonth] =>
[*m_EmployeeCompletedDay] =>
[*m_EmailAddress] =>[email protected]
------
------
)
अब यहां मैं इस स्टार (*) को समझ नहीं पा रहा हूं। जब मेरे सदस्य चर m_UserId, m_EmialPassword और इतने सरल होते हैं कि इस स्टार से यह कहां मिलता है। m_EmailAddress
:
display($arrOfObj['*m_EmailAddress']);
या
display($arrOfObj['m_EmailAddress']);
दोनों त्रुटि संदेश अपरिभाषित सूचकांक दे -: और मैं एक त्रुटि हो गया, जब मैं 2 बयान निम्नलिखित के साथ एक ही प्रदर्शित करने का प्रयास और जब मैं इसे करने की कोशिश करता हूं तो यह ठीक काम करता है: -
display($arrOfObj[$arrKeys[8]]);
अंतिम व्यक्ति ठीक काम करता है, क्या कोई मुझे समस्या बता सकता है।
display($arrOfObj[$arrKeys[11]]);
display($arrOfObj['m_strEmailAddress']);
फिर मैं स्टार के साथ सरणी संरक्षित कुंजी का उपयोग कैसे कर सकता हूं, और आपने मेरे प्रश्न की अंतिम 3 पंक्तियों का उत्तर नहीं दिया है। – ScoRpion
यदि आपको निकाली गई कुंजी से "असली" कुंजी मान मिलता है, तो आपको स्पष्ट रूप से सही कुंजी मिलती है। स्वयं को सही कुंजी बनाने के लिए, आपको एनयूएल बाइट्स को शामिल करना होगा, जैसे: '"\ 0 * \ 0m_strEmailAddress" '। – deceze
यह '" \ 0 * \ 0str थ्री "' है। डबल उद्धृत तार और एनयूएल बाइट तारांकन के चारों ओर हैं। – deceze