Класс AclShell
Оболочка для управления ACL. Известно, что у этой консоли есть проблемы при включенном zend.ze1_compatibility_mode. Убедитесь, что он выключен при использовании этой оболочки.
- Объект
-
Оболочка -
AppShell -
AclShell
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: Лицензия MIT
Расположение: Cake/Console/Command/AclShell.php
Унаследованные константы
Резюме свойств
- Содержит экземпляр компонента AclComponent
$Aclpublic -
$argspublicСодержит аргументы, разобранные из командной строки.array -
$connectionpublicСодержит источник базы данных для использованияstring -
$taskspublicСодержит задачи для загрузки и инициализацииarray
Унаследованные свойства
-
OptionParser,Tasks,_helpers,_lastWritten,_taskMap,command,interactive,modelClass,name,params,plugin,stderr,stdin,stdout,taskNames,uses
Резюме методов
- _dataVars() protectedСоздает параметры данных на основе типа узла
- _getNodeId() protected
Получить узел для заданного идентификатора. $identifier может быть либо строковым псевдонимом, либо массивом свойств для использования в AcoNode::node()
- _getParams() protectedПолучить параметры для стандартных методов ACL
- _outputNode() protectedВыводит один узел, используя либо псевдоним, либо Model.key
- check() publicПроверка разрешения для данного ARO на данный ACO.
- create() publicСоздает узел ARO/ACO
- delete() public
Удалить узел ARO/ACO. Обратите внимание, что может быть (в результате неправильной конфигурации) несколько записей с одинаковым логическим идентификатором. Все они удаляются.
- deny() publicЗапретить доступ для ARO к ACO.
- getOptionParser() publicПолучает экземпляр обработчика параметров и настраивает его.
- getPath() publicПолучить путь к указанному узлу ARO/ACO.
- grant() publicПредоставить разрешение для данного ARO на данный ACO.
- inherit() publicУстановить ARO для наследования разрешения на ACO.
- initdb() publicИнициализировать базу данных ACL.
- main() publicПереопределить main() для обработки сообщений помощи
- nodeExists() publicПроверяет, существует ли заданный узел
- parseIdentifier() public
Разбор идентификатора в Model.foreignKey или псевдоним. Принимает идентификатор, определяет его тип и возвращает результат, используемый другими методами.
- setParent() publicУстановить родителя для узла ARO/ACO.
- startup() publicПереопределить запуск Shell
- view() publicПоказать конкретный узел ARO/ACO.
Подробности методов
_dataVars()source protected
_dataVars( string $type null )
Создает параметры данных на основе типа узла
Параметры
- строка
$typeнеобязательно null - Тип узла (ARO/ACO)
Возвращает
массивПеременные
_getNodeId()source protected
_getNodeId( string $class , string|array|null $identifier )
Получить узел для заданного идентификатора. $identifier может быть либо строковым псевдонимом, либо массивом свойств для использования в AcoNode::node()
Параметры
- строка
$class - Тип класса, который вы хотите (Aro/Aco)
- строка|массив|null
$identifier - Смешанный идентификатор для поиска узла, иначе null.
Возвращает
целое числоЦелое число NodeId. Вызовет ошибку, если ничего не найдено.
_getParams()source protected
_getParams( )
Получить параметры для стандартных методов ACL
Возвращает
массивaro, aco, action
_outputNode()source protected
_outputNode( string $class , array $node , integer $indent )
Выводит один узел, используя либо псевдоним, либо Model.key
Параметры
- строка
$class - Имя класса, который используется.
- массив
$node - Массив информации о узле.
- целое число
$indent - уровень вложенности.
delete()source public
delete( )
Удалить узел ARO/ACO. Обратите внимание, что может быть (в результате неправильной конфигурации) несколько записей с одинаковым логическим идентификатором. Все они удаляются.
getOptionParser()source public
getOptionParser( )
Получает экземпляр обработчика параметров и настраивает его.
Возвращает
ConsoleOptionParserПереопределяет
Shell::getOptionParser() nodeExists()source public
nodeExists( )
Проверяет, существует ли заданный узел
Возвращает
booleanУспех
parseIdentifier()source public
parseIdentifier( string $identifier )
Разбирает идентификатор в Model.foreignKey или псевдоним. Принимает идентификатор, определяет его тип и возвращает результат, используемый другими методами.
Параметры
- строка
$identifier - Идентификатор для разбора
Возвращает
mixedстроку для псевдонимов и массив для model.foreignKey
Методы, унаследованные от Shell
__construct()source public
__construct( ConsoleOutput $stdout null , ConsoleOutput $stderr null , ConsoleInput $stdin null )
Создаёт экземпляр данного Shell.
Параметры
-
ConsoleOutput$stdoutнеобязательно null - Объект ConsoleOutput для вывода на стандартный вывод.
-
ConsoleOutput$stderrнеобязательно null - Объект ConsoleOutput для вывода на стандартный ошибку.
-
ConsoleInput$stdinнеобязательно null - Объект ConsoleInput для стандартного ввода.
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#ShellПереопределяет
Object::__construct() __get()source public
__get( string $name )
Перегрузка get для ленивого создания задач
Параметры
- строка
$name - Имя свойства для доступа.
Возвращает
ShellОбъект Task
__isset()source public
__isset( string $name )
Ленито загружает модели с помощью метода loadModel(), если они объявлены в $uses
Параметры
- строка
$name - Имя модели для поиска.
_checkUnitTest()source protected
_checkUnitTest( )
Действие для создания Unit Test
Возвращает
booleanУспех
_controllerName()source protected
_controllerName( string $name )
Создаёт правильное множественное имя контроллера для указанного имени класса контроллера
Параметры
- строка
$name - Имя класса контроллера
Возвращает
строкаМножественное имя контроллера
_controllerPath()source protected
_controllerPath( string $name )
Создаёт правильный путь к контроллеру для указанного имени класса контроллера
Параметры
- строка
$name - Имя класса контроллера
Возвращает
строкаПуть к контроллеру
_displayHelp()source protected
_displayHelp( string $command )
Отображает помощь в правильном формате
Параметры
- строка
$command - Команда, для которой требуется помощь.
_getInput()source protected
_getInput( string $prompt , string|array $options , string $default )
Запрашивает у пользователя ввод и возвращает его.
Параметры
- строка
$prompt - Текст запроса.
- строка|массив
$options - Массив или строка опций.
- строка
$default - Значение ввода по умолчанию.
Возвращает
Либозначение по умолчанию, либо введенное пользователем.
_loadModels()source protected
_loadModels( )
Если $uses - массив, загрузить каждую модель из массива
Возвращает
boolean_modelKey()source protected
_modelKey( string $name )
Создаёт правильное подчеркнутое имя модели для ассоциаций
Параметры
- строка
$name - Имя класса модели
Возвращает
строкаЕдинственное имя модели
_modelName()source protected
_modelName( string $name )
Создаёт правильное именованное (единственное число) имя модели для заданного имени
Параметры
- строка
$name - Имя
Возвращает
строкаИменованное (единственное число) имя модели
_modelNameFromKey()source protected
_modelNameFromKey( string $key )
Создаёт правильное имя модели из внешнего ключа
Параметры
- строка
$key - Внешний ключ
Возвращает
строкаИмя модели
_pluginPath()source protected
_pluginPath( string $pluginName )
Находит правильный путь к плагину. Ищет в $pluginPaths нужный плагин.
Параметры
- строка
$pluginName - Имя плагина (например, DebugKit)
Возвращает
строкаПуть к плагину.
_pluralHumanName()source protected
_pluralHumanName( string $name )
Создаёт множественное человекочитаемое имя, используемое в представлениях
Параметры
- строка
$name - Имя контроллера
Возвращает
строкаМножественное человекочитаемое имя
_pluralName()source protected
_pluralName( string $name )
Создаёт множественное имя для представлений
Параметры
- строка
$name - Имя для использования
Возвращает
строкаМножественное имя для представлений
_singularHumanName()source protected
_singularHumanName( string $name )
Создаёт единственное человекочитаемое имя, используемое в представлениях
Параметры
- строка
$name - Имя контроллера
Возвращает
строкаЕдинственное человекочитаемое имя
_singularName()source protected
_singularName( string $name )
Создаёт единственное имя для использования в представлениях.
Параметры
- строка
$name - Множественное подчеркнутое значение.
Возвращает
строкаИмя
_useLogger()source protected
_useLogger( boolean $enable true )
Используется для включения или отключения вывода потока логов в stdout и stderr. Если вы не хотите видеть в stdout или stderr всё, что регистрируется через CakeLog, вызовите эту функцию с первым параметром false.
Параметры
- boolean
$enableнеобязательно true - включать или выключать вывод CakeLog
clear()source public
clear( )
Очистить консоль
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::clearcreateFile()source public
createFile( string $path , string $contents )
Создает файл по заданному пути
Параметры
- string
$path - Куда поместить файл.
- string
$contents - Содержимое для размещения в файле.
Возвращает
booleanУспех
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::createFiledispatchShell()source public
dispatchShell( )
Перенаправить команду в другую оболочку. Аналогично Object::requestAction(), но предназначено для запуска оболочек из других оболочек.
Использование:
Со строковой командой:
return $this->dispatchShell('schema create DbAcl');
Избегайте использования этой формы, если у вас есть строковые аргументы с пробелами в них. Дистанционный вызов будет вызван неправильно. Используйте эту форму только для простого перенаправления команд.
С массивом команд:
return $this->dispatchShell('schema', 'create', 'i18n', '--dry');
Возвращает
mixedРезультат выполнения другой оболочки.
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::dispatchShellerr()source public
err( string|array $message null , integer $newlines 1 )
Выводит одно или несколько сообщений об ошибках в stderr. Если параметры не переданы, выводится только новая строка.
Параметры
- string|array
$messageнеобязательно null - Строка или массив строк для вывода
- integer
$newlinesнеобязательно 1 - Количество добавляемых новых строк
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::errerror()source public
error( string $title , string $message null )
Отображает отформатированное сообщение об ошибке и завершает приложение со статусом 1.
Параметры
- string
$title - Заголовок ошибки
- string
$messageнеобязательно null - Необязательное сообщение об ошибке
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::errorhasMethod()source public
hasMethod( string $name )
Проверка наличия вызываемого метода с данным именем в этой оболочке.
Параметры
- string
$name - Имя метода для проверки.
Возвращает
booleanСсылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::hasMethodhasTask()source public
hasTask( string $task )
Проверка наличия задачи с указанным именем в этой оболочке.
Параметры
- string
$task - Имя задачи для проверки.
Возвращает
booleanУспех
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::hasTaskhelper()source public
helper( string $name )
Загрузка указанного помощника оболочки.
Параметры
- string
$name - Имя класса помощника. Поддерживает синтаксис плагинов.
Возвращает
BaseShellHelperЭкземпляр класса помощника
Выбрасывает
RuntimeExceptionЕсли имя класса недействительно
hr()source public
hr( integer $newlines 0 , integer $width 63 )
Выводит серию символов тире в стандартный вывод, служит визуальным разделителем.
Параметры
- integer
$newlinesнеобязательно 0 - Количество новых строк для добавления до и после
- integer
$widthнеобязательно 63 - Ширина строки, по умолчанию 63
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::hrin()source public
in( string $prompt , string|array $options null , string $default null )
Запрашивает ввод от пользователя и возвращает его.
Параметры
- string
$prompt - Текст запроса.
- string|array
$optionsнеобязательно null - Массив или строка опций.
- string
$defaultнеобязательно null - Значение ввода по умолчанию.
Возвращает
mixedЛибо значение по умолчанию, либо введённые пользователем данные.
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::ininitialize()source public
initialize( )
Инициализирует оболочку, действует как конструктор для подклассов, позволяет настроить задачи перед выполнением оболочки.
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::initializeloadModel()source public
loadModel( string $modelClass null , mixed $id null )
Загружает и инициализирует модели, необходимые для этой оболочки.
Параметры
- string
$modelClassнеобязательно null - Имя класса модели для загрузки
- mixed
$idнеобязательно null - Изначальный ID, который должна иметь созданная модель
Возвращает
mixedtrue, если модель найдена и экземпляр создан, возвращает ошибку, если модель не найдена.
Выбрасывает
MissingModelExceptionесли класс модели не найден.
loadTasks()source public
loadTasks( )
Загружает задачи, определённые в public $tasks
Возвращает
booleannl()source public
nl( integer $multiplier 1 )
Возвращает одну или несколько последовательностей символов перевода строки.
Параметры
- integer
$multiplierнеобязательно 1 - Количество повторений последовательности перевода строки
Возвращает
stringСсылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::nlout()source public
out( string|array $message null , integer $newlines 1 , integer $level Shell::NORMAL )
Выводит одно или несколько сообщений в стандартный вывод. Если параметры не переданы, выводит только перевод строки.
Уровни вывода
Существует 3 встроенных уровня вывода. Shell::QUIET, Shell::NORMAL, Shell::VERBOSE. Уровни вывода verbose и quiet соответствуют переключателям вывода verbose и quiet в большинстве оболочек. Использование Shell::QUIET для сообщения означает, что оно всегда будет отображаться. Использование Shell::VERBOSE означает, что оно будет отображаться только при включенном подробном выводе.
Параметры
- строка|массив
$messageнеобязательно null - Строка или массив строк для вывода
- целое число
$newlinesнеобязательно 1 - Количество добавляемых переводов строк
- целое число
$levelнеобязательно Shell::NORMAL - Уровень вывода сообщения, см. выше.
Возвращает
целое число|булевоВозвращает количество байтов, возвращенных при записи в стандартный вывод.
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::outoverwrite()source public
overwrite( array|string $message , integer $newlines 1 , integer $size null )
Перезаписывает часть уже выведенного текста.
Полезно для создания полос прогресса или когда нужно заменить уже выведенный на экран текст новым текстом.
Предупреждение Вы не можете перезаписать текст, содержащий переводы строк.
Параметры
- массив|строка
$message - Сообщение для вывода.
- целое число
$newlinesнеобязательно 1 - Количество добавляемых переводов строк.
- целое число
$sizeнеобязательно null - Количество байтов для перезаписи. По умолчанию равно длине последнего выведенного сообщения.
Возвращает
целое число|булевоВозвращает количество байтов, возвращенных при записи в стандартный вывод.
param()source public
param( string $name )
Безопасно получить значения в $this->params.
Параметры
- строка
$name - Имя параметра для получения.
Возвращает
строка|булево|nullЗначение. Возвращает null, если параметр не существует.
runCommand()source public
runCommand( string $command , array $argv )
Выполняет оболочку с предоставленным argv.
Делегирует вызовы задачам и разрешает методы внутри класса. Команды ищутся в следующем порядке:
- Метод в оболочке.
- Соответствующее имя задачи.
-
main()метод.
Если оболочка реализует метод main(), все отсутствующие вызовы методов будут отправлены в main() с оригинальным именем метода в argv.
Параметры
- строка
$command Имя команды для запуска в этой оболочке. Если этот аргумент пустой, и оболочка имеет метод
main(), будет вызван он вместо этого.- массив
$argv - Массив аргументов для запуска оболочки. В этом массиве должно отсутствовать имя оболочки.
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::runCommandshortPath()source public
shortPath( string $file )
Делает абсолютный путь к файлу более читаемым
Параметры
- строка
$file - Абсолютный путь к файлу
Возвращает
строкаКороткое имя пути
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::shortPathwrapText()source public
wrapText( string $text , string|integer|array $options array() )
Обёртка блока текста. Позволяет установить ширину и отступ для блока текста.
Опции
-
widthШирина обрезки. По умолчанию 72 -
wordWrapОбрезка только по границам слов (пробелы) По умолчанию true. -
indentОтступ текста с помощью предоставленной строки. По умолчанию null.
Параметры
- строка
$text - Текст для форматирования.
- строка|целое число|массив
$optionsнеобязательно array() - Массив опций для использования или целое число для обрезки текста.
Возвращает
строкаОтформатированный текст/с отступом
См. также
CakeText::wrap()Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::wrapTextМетоды, унаследованные от Object
_mergeVars()source protected
_mergeVars( array $properties , string $class , boolean $normalize true )
Объединяет свойства $property этого объекта со свойством в определении $class. Значение этого класса для свойства будет объединено поверх $class'
Это обеспечивает некоторую DRY-магию, предоставляемую CakePHP. Если вы хотите её отключить, переопределите этот метод как пустую функцию.
Параметры
- массив
$properties - Имя свойств для объединения.
- строка
$class - Класс для объединения свойства с.
- булево
$normalizeнеобязательно true - Установите в true, чтобы запустить свойства через Hash::normalize() перед объединением.
_set()source protected
_set( array $properties array() )
Позволяет установить несколько свойств объекта в одной строке кода. Будут установлены только свойства, являющиеся частью объявления класса.
Параметры
- массив
$propertiesнеобязательно array() - Ассоциативный массив, содержащий свойства и соответствующие значения.
_stop()source protected
_stop( integer|string $status 0 )
Останавливает выполнение текущего скрипта. Оборачивает exit(), что облегчает тестирование.
Параметры
- целое число|строка
$statusнеобязательно 0 - см. http://php.net/exit для значений
dispatchMethod()source public
dispatchMethod( string $method , array $params array() )
Вызывает метод этого объекта с заданными параметрами. Предоставляет объектно-ориентированную обертку для call_user_func_array
Параметры
- строка
$method - Имя метода для вызова
- массив
$paramsнеобязательно array() - Список параметров для использования при вызове $method
Возвращает
смешанноеВозвращает результат вызова метода
log()source 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() для получения дополнительной информации о журналах.
Возвращает
булевоУспешность записи в журнал
requestAction()source 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.
Параметры
- string|array
$url Строковый или массивный URL. В отличие от других массивов URL в CakePHP, этот URL не будет автоматически обрабатывать переданные и именованные аргументы в параметре $url.
- array
$extraнеобязательный array() Если массив включает ключ «return», он устанавливает AutoRender в значение true. Также может быть использован для отправки данных GET/POST и именованных/переданных аргументов.
Возвращает
mixedБулево значение true или false при успехе/неудачи или содержимое отрисованного действия, если в $extra установлен ключ 'return'.
toString()source 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.8/class-AclShell.html