鍵概念
.drush.inc
hook_drush_command()
參數和選項:drush_get_option()
此功能將用於演示Drush如何向控制台打印消息。 我們稍後將其修改以展示各種命令功能。
drush命令文件(
)demo_drush
>
<code class="language-php">function demo_drush_print_statement() { drupal_set_message(t('Hello world!')); }</code>創建
。 drush從
>的文件中識別和加載函數>命令掛鉤和回調demo_drush.drush.inc
實現(定義命令和配置)和由命令觸發的回調函數。 讓我們從demo_drush.drush.inc
開始:.drush.inc
這將定義一個名為的命令(詞組為)。 回調函數(默認情況下,
)執行命令的邏輯:
hook_drush_command()
清除了drush緩存(hook_drush_command()
)後,運行
<code class="language-php">/** * Implements hook_drush_command(). */ function drush_demo_drush_command() { $items['drush-demo-command'] = array( 'description' => 'Demonstrates Drush command functionality.', 'aliases' => array('ddc'), ); return $items; }</code>
drush-demo-command
參數和選項ddc
drush_drush_demo_command()
通過參數(強制性)和選項(可選)來增強您的命令。 讓我們將它們添加到鉤子中:
<code class="language-php">function demo_drush_print_statement() { drupal_set_message(t('Hello world!')); }</code>
現在,drush ddc error --repeat=10
將語句類型設置為“錯誤”,然後重複10次。 更新demo_drush_print_statement()
和回調功能相應:
<code class="language-php">/** * Implements hook_drush_command(). */ function drush_demo_drush_command() { $items['drush-demo-command'] = array( 'description' => 'Demonstrates Drush command functionality.', 'aliases' => array('ddc'), ); return $items; }</code>
用戶輸入
交互方式處理丟失參數:
<code class="language-php">/** * Callback for the drush-demo-command command. */ function drush_drush_demo_command() { demo_drush_print_statement(); }</code>
> hook_drush_command()
>在鉤子上添加示例:
<code class="language-php">... 'arguments' => array( 'type' => 'Statement type (error or success).', ), 'options' => array( 'repeat' => 'Number of statement repeats.', ), ...</code>
結論
本教程涵蓋了創建drush命令的基礎知識。 探索高級功能,例如Bootstrap級別,模塊依賴項和Drush API文檔中的核心版本兼容性。
>常見問題(常見問題解答)(輸入中這些問題已經寫得很好,無需重寫)
以上是Drupal:如何創建自己的drush命令的詳細內容。更多資訊請關注PHP中文網其他相關文章!