PHP - if a value exists in an array of objects -
मेरे पास $ फिलेट नामक ऑब्जेक्ट हैं जो निम्नानुसार हैं:
Array ( [0] = & gt; STDClass ऑब्जेक्ट ([शीर्षक] = & gt; प्रकार [उपनाम] = & gt; प्रकार [आईडी] = & gt; 14 [parent_id] = & gt; 9 [subs] = & gt; सरणी ([0] = & gt ; [[शीर्षक] = & gt; कार [उपनाम] = & gt; कार [आईडी] = & gt; 15 [parent_id] = & gt; 14))) [1] = & gt; स्टड क्लास ऑब्जेक्ट ([शीर्षक] = & gt; मॉडल [उर्फ] = & gt; मॉडल [आईडी] = & gt; 18 [पैरेंट_आईड] = & gt; 9 [subs] = & gt; ऐरे ([0] = & gt; स्टडी क्लास ऑब्जेक्ट ([शीर्षक] = & gt; एक्सएफ [उपनाम] = & Gt; xf [आईडी] = & gt; 1 9 [माता-पिता] = & gt; 18) [1] = & gt; स्टडी क्लास ऑब्जेक्ट ([शीर्षक] = & gt; एक्सजे [उपनाम] = & gt; xj [आईडी] = & gt; 20 [parent_id ] = & Gt; 18) [2] = & gt; स्टडी क्लास ऑब्जेक्ट ([शीर्षक] = & gt; एक्सके [उपनाम] => एक्सके [आईडी] = & gt; 21 [माता-पिता] = & gt; 18) [3] = & gt; ([शीर्षक] = & gt; एफ-टाइप [आईडी] = & gt; 22 [parent_id] = & gt; 18))) [2] = & gt; स्टड क्लास ऑब्जेक्ट ([शीर्षक] = & Gt; शर्त [उपनाम] = & gt; शर्त [आईडी] = & gt; 24 [parent_id] = & Gt; 9 [subs] = & gt; ऐरे ([0] = & gt; STDClass ऑब्जेक्ट ([शीर्षक] = & gt; नया [उपनाम] = & gt; नया [आईडी] = & gt; 24 [parent_id] = & gt; 9)))) यह जांचने के लिए सबसे अच्छा अभ्यास क्या है कि कोई शब्द $ फिल्टर [$ i] - & gt; शीर्षक और $ फिल्टर [$ i] - & gt; subs [$ j] - & gt; शीर्षक में मौजूद है। स्पीड इस चेकिंग में वास्तव में महत्वपूर्ण है।
एक साधारण रिकर्सिव फ़ंक्शन बनाएँ:
फ़ंक्शन myArrayContainsWord (सरणी $ myArray, $ शब्द) {foreach ($ myArray $ तत्व के रूप में) {if ($ element- & gt; title == $ शब्द || (! खाली ($ myArray ['subs']) और ; & Amp; myArrayContainsWord ($ myArray ['subs'], $ शब्द)) {वापसी सच;}} वापसी झूठी;} फिर इसे इस तरह कहते हैं:
यदि (myArrayContainsWord ($ filtes, $ title)) {...}
Comments
Post a Comment