Здравствуйте уважаемые форумчане, очень нуждаюсь в вашей помощи! Я пишу аналог ф-и array_diff_uassoc(пишу, чтобы лучше понимать и и уметь кодить), в общем написал и при глубоком тестировании выяснил, что моя ф-я дает сбой! При ситуации $q = function (){}; $array1 = array(1,2,3,4); $array2 = array(1,2,3); print_r(array_diff_uassoc($array1, $array2, $q)); print_r(my_array_diff_uassoc($array1, $array2, $q)); Получаются такие выводы Array ( [0] => 1 [1] => 2 [3] => 4 ) и соответственно моя ф-я выдает Array ( [3] => 4 ) Еще интересней получается когда когда пихаешь смешанные массивы,где и объекты и некоторые параметры массивов тоже массивы содержат, а так же нулл и параметры булева типа! Очень прошу, помогите разобраться, заранее всем спасибо за помощь!
Нахера писать аналоги встроенным функциям, это же не ASM ZX80? (циклический сдвиг походу программистам биоса был незнаком...) P.S. my_array_diff_uassoc - код то приведи, а то что сравнивать чистый воздух с высером?
Мне кажется это нормальный способ научиться кодить! Насчет кода специально не вылаживал, тк хочу сам написать, непонятна логика в конкретном случае,когда калбэк ф-я является closure,сравнение у меня идет так if ($arrays[count($arrays) - 1]($keyArray[$j],$key) === 0 and (string)$arrays[$i][$key] === (string)$value) ---- скорее всего что-то не правильно, но исправить возможно только в том случае,если я пойму логику!