当前位置: 首页>>代码示例>>PHP>>正文


PHP Cli::set_option方法代码示例

本文整理汇总了PHP中Cli::set_option方法的典型用法代码示例。如果您正苦于以下问题:PHP Cli::set_option方法的具体用法?PHP Cli::set_option怎么用?PHP Cli::set_option使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Cli的用法示例。


在下文中一共展示了Cli::set_option方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: arguments

 /**
  * Construct the argument list
  *
  * @param  string  $table  name of the database table we need to create the list for
  * @return array
  */
 protected static function arguments($table)
 {
     // get the list of columns from the table
     try {
         $columns = \DB::list_columns(trim($table), null, \Cli::option('db', null));
     } catch (\Exception $e) {
         \Cli::write($e->getMessage(), 'red');
         exit;
     }
     // construct the arguments list, starting with the table name
     $arguments = array($table);
     // set some switches
     $include_timestamps = false;
     $timestamp_is_int = true;
     // process the columns found
     foreach ($columns as $column) {
         // do we have a data_type defined? If not, use the generic type
         isset($column['data_type']) or $column['data_type'] = $column['type'];
         // skip the 'id' column, it will be added automatically
         if ($column['name'] == 'id') {
             continue;
         }
         // detect timestamp columns
         if (in_array($column['name'], array('created_at', 'updated_at'))) {
             $include_timestamps = true;
             $timestamp_is_int = $column['data_type'] == 'int';
             continue;
         }
         // do we need to add constraints?
         $constraint = '';
         foreach (array('length', 'character_maximum_length', 'display') as $idx) {
             // check if we have such a column, and filter out some default values
             if (isset($column[$idx]) and !in_array($column[$idx], array('65535', '4294967295'))) {
                 $constraint = '[' . $column[$idx] . ']';
                 break;
             }
         }
         // if it's an enum column, list the available options
         if (in_array($column['data_type'], array('set', 'enum'))) {
             $constraint = '[' . implode(',', $column['options']) . ']';
         }
         // store the column in the argument list
         $arguments[] = $column['name'] . ':' . $column['data_type'] . $constraint;
     }
     // set the switches for the code generation
     \Cli::set_option('no-timestamp', $include_timestamps === false);
     \Cli::set_option('mysql-timestamp', $timestamp_is_int === false);
     // return the generated argument list
     return $arguments;
 }
开发者ID:takawasitobi,项目名称:pembit,代码行数:56,代码来源:fromdb.php

示例2: fromconfig

 /**
  * Generate documentation from config
  *
  * Usage (from command line):
  * 
  * php oil r dbdocs:fromconfig
  * 
  * @param  $dir Documentation directory
  * @param  $name Name of config
  */
 public static function fromconfig($dir = null, $name = null)
 {
     if ($dir === null) {
         static::help();
         exit;
     }
     \Config::load('dbdocsconnections', true);
     $connections = \Config::get('dbdocsconnections', array());
     if (empty($connections)) {
         \Cli::write('Configuration is empty.', 'red');
     } else {
         if ($name === null) {
             $name = trim(\Cli::prompt("Enter a name.\n", array_keys($connections)));
         } else {
             if (!isset($connections[$name])) {
                 \Cli::write("Not Found configuration \"{$name}\"", 'red');
                 exit;
             }
         }
         \Cli::set_option('n', true);
         foreach ($connections[$name] as $k => $v) {
             if (!empty($k) and $k != 'driver') {
                 \Cli::set_option($k, $v);
             }
         }
         switch ($connections[$name]['driver']) {
             case 'pdo_mysql':
                 static::mysql($dir);
                 break;
             case 'pdo_pgsql':
                 static::pgsql($dir);
                 break;
             case 'pdo_sqlite':
                 static::sqlite($dir);
                 break;
             case 'pdo_sqlsrv':
                 static::mssql($dir);
                 break;
         }
     }
 }
开发者ID:mp-php,项目名称:fuel-packages-dbdocs,代码行数:51,代码来源:dbdocs.php


注:本文中的Cli::set_option方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。