本文整理汇总了PHP中Zend\Console\Console::detectBestAdapter方法的典型用法代码示例。如果您正苦于以下问题:PHP Console::detectBestAdapter方法的具体用法?PHP Console::detectBestAdapter怎么用?PHP Console::detectBestAdapter使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Zend\Console\Console
的用法示例。
在下文中一共展示了Console::detectBestAdapter方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: createService
/**
* Create and return a Console adapter instance.
* In case we're not in a Console environment, return a dummy stdClass object.
*
* In order to disable adapter auto-detection and use a specific adapter (and charset),
* add the following fields to application configuration, for example:
*
* 'console' => array(
* 'adapter' => 'MyConsoleAdapter', // always use this console adapter
* 'charset' => 'MyConsoleCharset', // always use this console charset
* ),
* 'service_manager' => array(
* 'invokables' => array(
* 'MyConsoleAdapter' => 'Zend\Console\Adapter\Windows',
* 'MyConsoleCharset' => 'Zend\Console\Charset\DESCG',
* )
* )
*
* @param ServiceLocatorInterface $serviceLocator
* @return AdapterInterface|stdClass
*/
public function createService(ServiceLocatorInterface $serviceLocator)
{
// First, check if we're actually in a Console environment
if (!Console::isConsole()) {
// SM factory cannot currently return null, so we return dummy object
return new stdClass();
}
// Read app config and determine Console adapter to use
$config = $serviceLocator->get('Config');
if (!empty($config['console']) && !empty($config['console']['adapter'])) {
// use the adapter supplied in application config
$adapter = $serviceLocator->get($config['console']['adapter']);
} else {
// try to detect best console adapter
$adapter = Console::detectBestAdapter();
$adapter = new $adapter();
}
// check if we have a valid console adapter
if (!$adapter instanceof AdapterInterface) {
// SM factory cannot currently return null, so we convert it to dummy object
return new stdClass();
}
// Optionally, change Console charset
if (!empty($config['console']) && !empty($config['console']['charset'])) {
// use the charset supplied in application config
$charset = $serviceLocator->get($config['console']['charset']);
$adapter->setCharset($charset);
}
return $adapter;
}
示例2: testCanTestIsConsole
public function testCanTestIsConsole()
{
$this->assertTrue(Console::isConsole());
$className = Console::detectBestAdapter();
$adpater = new $className();
$this->assertTrue($adpater instanceof Adapter\AdapterInterface);
Console::overrideIsConsole(false);
$this->assertFalse(Console::isConsole());
$this->assertEquals(null, Console::detectBestAdapter());
}
示例3: testCollectContributorsInfoFailed
public function testCollectContributorsInfoFailed()
{
$adapter = Console::detectBestAdapter();
$consoleAdapter = new $adapter();
$controller = new ConsoleController($consoleAdapter, ['console' => ['contributors' => ['output' => 'foo.pson']]], $this->httpClient);
$class = new ReflectionClass('Application\\Controller\\ConsoleController');
$method = $class->getMethod('collectContributorsInfo');
$method->setAccessible(true);
$contributors = [0 => ['login' => '*samsonasik*']];
$method->invokeArgs($controller, [$contributors, 3, 100]);
}
示例4: testGetConsoleUsage
public function testGetConsoleUsage()
{
$expected = ['get contributors' => 'get contributors list'];
$consoleAdapter = Console::detectBestAdapter();
$this->assertEquals($expected, $this->module->getConsoleUsage(new $consoleAdapter()));
}