Я согласен с вами, что мой ответ не вяжется с верхним, но не потому что мой ответ не верный :) Ибо там идет присваивание (знак =), а не проверка равенства ($this->params == $url) ибо проверка на равенство делается либо ==, либо ===
Алексей Скляров, вы не могли бы немного пояснить это правило применительно к моему примеру. У меня свойство $param по умолчанию задано пустым массивом. в $url лежат "остатки" от запроса (остальное уже растянули контроллер и метод). что получается, я спрашиваю "если $param = $url истина (что может быть, только если нет никаких параметров в запросе после метода), то присвоить $param массив параметров из запроса (что полная бессмыслица, потому как в условии мы как раз исключили наличие чего либо в $url...)" где я не туда свернул?)
блин, я опять о сравнении, а там присвоение... тогда в каком случае массив $url с значениями может быть True и наоборот False?...Типа все таки это isset?
Виктор Волков, я не совсем понял вашу проблему, могу описать просто что делает тот код, что вы в вопросе описали.
У вас есть $param, есть $url, который является массивом (судя по всему). Далее идет следующее: если у нас вообще есть $url и он не пустой, то мы присваиваем $param массив значений из $url (array_values($url) в вашем коде), если же $url у нас нет вообще, то $param будет просто пустым массивом.
Чтобы вам было проще, вот пример проверки: допустим вы передали какой-то $_POST параметр на сервер, пусть будет $_POST['url]
Виктор Волков, по ссылке что я вам кидал, можно посмотреть 2 ответ:
The following list explains what is considered to evaluate to false in PHP:
the boolean FALSE itself
the integer 0 (zero)
the float 0.0 (zero)
the empty string, and the string "0"
an array with zero elements
an object with zero member variables (PHP 4 only)
the special type NULL (including unset variables)
SimpleXML objects created from empty tags
Every other value is considered TRUE (including any resource).
Виктор Волков, выражение if ($url) вернет false если у вас $url:
массив с нулевыми элементами
пустая строка
integer 0
float 0.0
и тд. Вообще если решили удариться в программирование, стоит поднять уровень англ. хотя бы до уровня просмотра тех же самых вопросов на английском языке, большинство вопросов, тут задающихся, можно найти на stackoverflow.com