php - foreach loop begins at last element -


मेरा foreach लूप अंतिम तत्व से शुरू होता है मेरे पास ऑरेंज $ ग्रिड के भीतर एक सरणी $ gridRows है, जो वर्तमान में इस तरह सेट है:

  $ grid gridrows 2 gridcells 1 2 3 3 ग्रिडक्लस 1 2  

ग्रिडरो 2 में 3 ग्रिड सील्स हैं और ग्रिडरो 3 में 2 ग्रिडक्लल्स हैं।

हालांकि, जब मैं इसके माध्यम से पुनरावृत्त करता हूं, तो पहले foreach ग्रिडरो में जाता है 3 पहले। यह अभी भी ग्रिडरो 2 पर पुनरावृत्त करता है लेकिन यह दूसरा करता है।

  $ gridRows = $ grid- & gt; ग्रिड्रिव (); विदेशी मुद्रा ($ ग्रिड आरओ $ पंक्ति के रूप में = & gt; $ पंक्ति वाला) {$ gridCells = $ rowValue- & gt; ग्रिग्रिडकेल (); Foreach ($ gridCells $ cellKey = & gt; $ cellValue के रूप में) {// कुछ करो}}  

क्या देता है? सॉर्ट ($ ग्रिड, SORT_NUMERIC) का उपयोग करने की कोशिश की लेकिन मुझे एक ही प्रभाव मिलता है।

प्रिंट_आर का परिणाम ($ gridRows):

  सरणी ([3] = & gt; GridRow ऑब्जेक्ट ([gridCells: GridRow: private] = & gt; सरणी ([2] = & gt; ग्रिडसेल ऑब्जेक्ट (...) [1] = & gt; ग्रिडसेल ऑब्जेक्ट (...))) [2] = & gt; GridRow ऑब्जेक्ट ([gridCells: GridRow: private] = & gt; सरणी ([1] = & gt; ग्रिडसेल ऑब्जेक्ट (...) [2] = & gt; ग्रिडसेल ऑब्जेक्ट (...) [3] = & Gt; ग्रिडसेल वस्तु (...))))  

ऐसा लगता है ऑब्जेक्ट एक सरणी नहीं है अपने इच्छित आदेश को बनाए रखने के लिए संख्यात्मक अनुक्रमित सरणी का उपयोग करें।


Comments