У меня есть следующие два массива (var_dumped
):Чистый способ написать эту проверку?
array (size=3)
'param' =>
array (size=1)
0 => string 'Example' (length=7)
'page-template' => string 'general' (length=7)
'action' =>
object(Closure)[2125]
array (size=3)
'param' =>
array (size=1)
0 => string 'Example' (length=7)
'page-template' => string 'general' (length=7)
'action' =>
object(Closure)[2126]
Теперь они такие же, они даже называют ту же функцию (в 'action'
), но я не могу ===
на них из-за закрытия, так что я написал эта проверка:
foreach(self::$registeredRoutes[$routeName] as $routeActions) {
if (!is_callable($action) && !is_callable($routeActions)) {
if (isset($routeActions['param']) && isset($action['param'])
&& $routeActions['param'] === $action['param'] &&
isset($routeActions['page-template']) &&
isset($action['page-template']) &&
$routeActions['page-template'] === $action['page-template']
) {
var_dump('hello');
}
}
}
Принять это заставляет меня хотеть рвать из-за утверждения if. Есть ли более чистый, способный к проверке способ написать это, где я получаю тот же результат?
Возникает вопрос, который вы могли бы опубликовать на http://codereview.stackexchange.com/ :) – AlvaroSantisteban
@AlvaroSantisteban. – TheWebs