PHP: использование метода, который может иметь или не иметь параметры - PullRequest
2 голосов
/ 22 ноября 2010

У меня есть функция в классе, которая запрашивает базу данных.Я создаю запрос на лету, используя предложения where на основе переменных.

Скажем, у меня есть такой метод:

function getBackups($from, $to, $clientid){

    //sql here
    //add where clause if $from and $to not null...

}

Если я хочу вызвать это где-то в ситуации, когда у меня нет переменных from или to, я бы просто поместил $ backups-> getBackups() но я получу ошибку об отсутствующем параметре.

Если я сделаю это:

function getBackups($from = null, $to = null, $clientid = null){

    //sql here
    //add where clause if $from and $to not null...
}

Будет ли это решением?или это будет больше так, если я не передаю параметры?

$backups->getBackups($from = null, $to = null, clientid = null)

Надеюсь, это имеет смысл,

Jonesy

Ответы [ 3 ]

1 голос
/ 22 ноября 2010

вы можете делать то, что говорите:

function getBackups($from = null, $to = null, $clientid = null){

    //sql here
    //add where clause if $from and $to not null...
}

а затем вы можете назвать это так:

$backups->getBackups()

или вы можете позвонить

$backups->getBackups($from, $to, $clientid)

Внутри функции вы можете проверить, являются ли параметры нулевыми (или любое другое значение по умолчанию, которое вы хотите использовать), и выполнить код в зависимости от параметров.

HTH.

1 голос
/ 22 ноября 2010

необязательных параметров в php так же просто, как это:

function getBackups($from = null, $to = null, $clientid = null){

    //sql here
    //add where clause if $from and $to not null...
}

И чтобы позвонить, вы просто позвоните:

backups->getBackups();

или

backups->getBackups("from");

если вы включите в функцию какие-либо аргументы, они заменят значения по умолчанию в порядке их появления.

1 голос
/ 22 ноября 2010
function getBackups($from = null, $to = null, $clientid = null){

    //sql here
    //add where clause if $from and $to not null...
}

Это решение для функций с необязательными параметрами, если вы это имеете в виду.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...