[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: null в качестве аргумента
konstantin1985


Почему аргумент функции $primaryKey = Null - участвует в ее описании. Зачем тогда передавать ее null в аргументе?

/**
* Delete object from database
*
* <code>
* // Delete object with lazy load
* Core_ORM::factory('Book', 1)->delete();
* </code>
* <code>
* // Delete object without load
* Core_ORM::factory('Book')->delete(1);
* </code>
* @param mixed $primaryKey primary key for deleting object
* @return Core_ORM
* @hostcms-event Core_ORM.onBeforeDelete
* @hostcms-event Core_ORM.onAfterDelete
*/
public function delete($primaryKey = NULL)
{
Core_Event::notify($this->_modelName . '.onBeforeDelete', $this, array($primaryKey));

if (is_null($primaryKey))
{
$primaryKey = $this->getPrimaryKey();
}

if (!is_null($primaryKey))
{
Core_QueryBuilder::delete($this->_tableName)
->
where($this->_primaryKey, '=', $primaryKey)
->
execute();
}

Core_Event::notify($this->_modelName . '.onAfterDelete', $this, array($primaryKey));

return $this;
}
Игорь_Vasinsky
Цитата
if (is_null($primaryKey))
  {
   $primaryKey = $this->getPrimaryKey();
  }

чё тупишь.

написано же - если не передал первичный ключ - использовать тот который установлен в свойстве класса.

Свернутый текст
да мы в орм работаем, кверибилдерами шорхаемся.. тьфу.


_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
AllesKlar
konstantin1985
Я по диогонали твои темы прочитал.
Ты рано взялся за ORM
Изучи основы языка сначала. Каждая твоя тема - это вопрос как раз по основам.
Конкретно эта:
Цитата (konstantin1985 @ 2.01.2016 - 18:07)
Почему аргумент функции $primaryKey = Null - участвует в ее описании. Зачем тогда передавать ее null в аргументе?

Это называется значение аргумента по умолчанию. Основа основ процедур / функций практически любого языка.

function myFunc($var = 5)
{
echo $var;
}

myFunc(100); // выведет 100
myFunc(); // выведет 5


_____________
[продано копирайтерам]
Ron
Как раз тот случай о чем говорит twin в контексте о фреймворках и паттернах.

konstantin1985
Цитата (AllesKlar @ 2.01.2016 - 21:06)
konstantin1985
Я по диогонали твои темы прочитал.
Ты рано взялся за ORM
Изучи основы языка сначала. Каждая твоя тема - это вопрос как раз по основам.
Конкретно эта:
Цитата (konstantin1985 @ 2.01.2016 - 18:07)
Почему аргумент функции $primaryKey = Null - участвует в ее описании. Зачем тогда передавать ее null в аргументе?

Это называется значение аргумента по умолчанию. Основа основ процедур / функций практически любого языка.

function myFunc($var = 5)
{
echo $var;
}

myFunc(100); // выведет 100
myFunc(); // выведет 5

AllesKlar, я изучаю CMS и параллельно разбираюсь с php на php.net. К сожалению там очень сухо описаны основы. а с ORM начал так как это первый набор функций от которой пляшет вся cms.
Ron
Похоже на HostCMS.

Невозможно нормально изучать язык с нуля на таких серьезных продуктах как CMS. Слишком сильный уровень абстракции, слишком высокий порог вхождения. У вас есть все шансы стать очень плохим и невостребованным кодером с таким подходом.
Игорь_Vasinsky
Цитата
я изучаю CMS и параллельно разбираюсь с php

херовая схема.

надо изучать PHP и параллельно ковырять CMS

чуешь разницу?

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.