[تحسين] اخذ قيمة واحدة من دالة ترجع مصفوفة فى سطر واحد
ان كنت سألت نفسك يوما ما ان كنت تستطيع استعمال هذه الصيغة:
$a = function_that_returns_an_array()['some_index']['some_other_index'] ;الاجابة بكل بساطة. من رابع المستحيلات ولكن يمكنك استخدام هذه الدالة. ولكن يمكنك استعمال:i( $array, $index [, $index2, $index3 ...] ) وهى تستخدم بدلا من تعريف مخرجات الدالة اولا ثم اخد القيمة المرادة$tmp = some_function_that_returns_an_array() ; $value = $tmp['some_index']['some_other_index'] ;يمكنك عمل هذا فى سطر واحد كالتالى $value = i( some_function_that_returns_an_array(), 'some_index', 'some_other_index' ) ;ملحوظة: هذه الطريقة اقل سرعة من الاساسية لذلك يجب استعمالها فى هذه الحالة فقط function i(){ $args = func_get_args(); $array = $args[0]; $indexes = $args; unset($indexes[0]); foreach( $indexes as $index ){ if( (! is_array($array)) || (! array_key_exists( $index, $array )) ){ throw new Exception("Array index out of bounds.Parameters:".print_r($args,true)); } $array = $array[$index]; } return $array; } |
الموقع الآن فى الفترة التجريبية وهذا الجزء غير كامل وجارى العمل عليه، للراغبين في المساعدة برجاء التقدم