Класс CakeSchema
Базовый класс для управления схемами.
- Объект
-
CakeSchema
Авторские права: Авторские права (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT Лицензия
Расположение Cake/Model/CakeSchema.php
Подробное описание методов
__constructисходный код public
__construct( array $options array() )
Конструктор
Параметры
- массив
$optionsнеобязательный массив() - Необязательные свойства объекта для загрузки.
Переопределяет
Object::__construct() _arrayDiffAssocисходный код protected
_arrayDiffAssoc( array $array1 , array $array2 )
Расширенный array_diff_assoc, учитывающий изменения из/в значения NULL.
Ведет себя почти так же, как array_diff_assoc, за исключением значений NULL: если одно из значений не равно NULL — изменение обнаруживается. Это полезно в ситуациях, когда одно значение равно strval('') и другое strval(null) — в методах сравнения строк это приводит к значению РАВНО, хотя это не так.
Параметры
- массив
$array1 - Базовый массив.
- массив
$array2 - Соответствующий массив, проверяемый на равенство.
Возвращает
arrayРазницу как массив с элементами (ключи => значения) из входного массива, где соответствие не найдено.
_columnsисходный код protected
_columns( array $Obj )
Форматирует столбцы схемы из объекта модели.
Параметры
- массив
$Obj - $Obj объект модели.
Возвращает
arrayОтформатированные столбцы.
_compareIndexesисходный код protected
_compareIndexes( array $new , array $old )
Сравнивает два индекса схемы.
Параметры
- массив
$new - Новые индексы.
- массив
$old - Старые индексы.
Возвращает
mixedFalse в случае неудачи или массив индексов для добавления и удаления.
_compareTableParametersисходный код protected
_compareTableParameters( array $new , array $old )
Сравнивает параметры таблицы двух схем.
Параметры
- массив
$new - Новые индексы.
- массив
$old - Старые индексы.
Возвращает
mixedFalse при ошибке или массив параметров для добавления и удаления.
_noPrefixTableисходный код protected
_noPrefixTable( string $prefix , string $table )
Удаляет префикс таблицы из полного имени таблицы и возвращает таблицу без префикса.
Параметры
- строка
$prefix - Префикс таблицы.
- строка
$table - Полное имя таблицы.
Возвращает
stringИмя таблицы без префикса.
_requireFileисходный код protected
_requireFile( string $path , string $file )
Попытка подключить указанный файл схемы.
Параметры
- строка
$path - Путь к файлу в файловой системе.
- строка
$file - Базовое имя файла в файловой системе.
Возвращает
booleanTrue, если файл был успешно подключен, false в случае ошибки.
_valuesисходный код protected
_values( array $values )
Форматирует столбцы схемы из объекта модели.
Параметры
- массив
$values - Ключи параметров столбцов (тип, null, значение по умолчанию, ключ, длина, дополнительно).
Возвращает
arrayОтформатированные значения.
afterисходный код public
after( array $event array() )
Обработчик после, который должен быть реализован в подклассах.
Параметры
- массив
$eventнеобязательный массив() - Свойства объекта схемы.
beforeисходный код public
before( array $event array() )
Обработчик перед, который должен быть реализован в подклассах.
Параметры
- массив
$eventнеобязательный массив() - Свойства объекта схемы.
Возвращает
booleanСледует ли продолжить обработку.
buildисходный код public
build( array $data )
Создает свойства объекта схемы.
Параметры
- массив
$data - Загруженные свойства объекта.
compareисходный код public
compare( array|object $old , array|object $new null )
Сравнивает два набора схем.
Параметры
- массив|объект
$old - Объект или массив схемы.
- массив|объект
$newнеобязательный null - Объект или массив схемы.
Возвращает
arrayТаблицы (которые добавлены, удалены или изменены).
generateTableисходный код public
generateTable( string $table , array $fields )
Генерирует код схемы для таблицы.
Принимает имя таблицы и массив $fields и возвращает полное, экранированное объявление переменной, которое будет использоваться в классах схем.
Параметры
- строка
$table - Имя таблицы, которое вы хотите получить.
- массив
$fields - Массив информации о полях для создания таблицы.
Возвращает
stringОбъявление переменной для класса схемы.
loadисходный код public
load( array $options array() )
Читает базу данных и создает таблицы схемы.
Параметры
- массив
$optionsнеобязательный массив() - Свойства объекта схемы.
Возвращает
arrayНабор имен и таблиц.
readисходный код public
read( array $options array() )
Читает базу данных и создает таблицы схемы.
Параметры
- 'connection' - подключение к БД, которое нужно использовать
- 'name' - имя схемы
- 'models' - список моделей для использования, или false для игнорирования моделей
Параметры
- массив
$optionsнеобязательный массив() - Свойства объекта схемы.
Возвращает
arrayМассив, индексированный по имени и таблицам.
writeисходный код public
write( array|object $object , array $options array() )
Записывает файл схемы из объекта или параметров.
Параметры
- массив|объект
$object - Объект или массив параметров схемы.
- массив
$optionsнеобязательный массив() - Свойства объекта схемы для переопределения объекта.
Возвращает
mixedFalse или строка, записанная в файл.
Наследованные методы из Объекта
_mergeVarssource protected
_mergeVars( array $properties , string $class , boolean $normalize true )
Объединяет свойства объекта $property со свойствами в определении $class. Значение свойства этого класса будет объединено поверх значения $class.
Это предоставляет некоторую из магии DRY, предоставляемой CakePHP. Если вы хотите отключить её, переопределите этот метод как пустую функцию.
Параметры
- массив
$properties - Название свойств для объединения.
- строка
$class - Класс для объединения свойства с.
- логическое значение
$normalizeнеобязательно true - Установите в значение true, чтобы запустить свойства через Hash::normalize() перед объединением.
_setsource protected
_set( array $properties array() )
Разрешает установить несколько свойств объекта в одной строке кода. Будет устанавливать только свойства, которые являются частью объявления класса.
Параметры
- массив
$propertiesнеобязательно array() - Ассоциативный массив, содержащий свойства и соответствующие значения.
_stopsource protected
_stop( integer|string $status 0 )
Останавливает выполнение текущего скрипта. Оборачивает exit(), что облегчает тестирование.
Параметры
- целое число или строка
$statusнеобязательно 0 - см. http://php.net/exit для значений
dispatchMethodsource public
dispatchMethod( string $method , array $params array() )
Вызывает метод этого объекта с заданными параметрами. Предоставляет ОО-обёртку для call_user_func_array
Параметры
- строка
$method - Имя вызываемого метода
- массив
$paramsнеобязательно array() - Список параметров для использования при вызове $method
Возвращает
mixedВозвращает результат вызова метода
logsource public
log( string $msg , integer $type LOG_ERR , null|string|array $scope null )
Удобный метод для записи сообщения в CakeLog. См. CakeLog::write() для получения дополнительной информации о записи в журналы.
Параметры
- строка
$msg - Сообщение журнала
- целое число
$typeнеобязательно LOG_ERR - Константа типа ошибки. Определена в app/Config/core.php.
- null|строка|массив
$scopeнеобязательно null - Область(и), в которой создается сообщение журнала. См. CakeLog::config() для получения дополнительной информации о журналах.
Возвращает
booleanУспех записи в журнал
requestActionsource public
requestAction( string|array $url , array $extra array() )
Вызывает метод контроллера из любого места. Может использоваться для подключения контроллеров друг к другу или связывания плагинов с основным приложением. requestAction может использоваться для возврата рендеренных представлений или извлечения возвращаемого значения из действий контроллера.
Под капотом этот метод использует Router::reverse() для преобразования параметра $url в строку URL. Вы должны использовать форматы URL, совместимые с Router::reverse()
Передача данных POST и GET
Данные POST и GET могут быть смоделированы в requestAction. Используйте $extra['url'] для данных GET. Параметр $extra['data'] позволяет моделировать данные POST.
Параметры
- строка или массив
$url - Строка или URL на основе массива. В отличие от других массивов URL в CakePHP, этот URL не будет автоматически обрабатывать переданные и именованные аргументы в параметре $url.
- массив
$extraнеобязательно array() - если массив содержит ключ "return", он устанавливает AutoRender в true. Также может использоваться для отправки данных GET/POST, а также именованных/переданных аргументов.
Возвращает
mixedБулево значение true или false об успехе/неуспехе, или содержимое рендерного действия, если в $extra установлен 'return'
toStringsource public
toString( )
Преобразование объекта в строку. Каждый класс может переопределить этот метод по необходимости.
Возвращает
stringИмя этого класса
Краткое описание свойств
© 2005–2016 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
http://api.cakephp.org/2.7/class-CakeSchema.html