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


PHP Process::isPtySupported方法代码示例

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


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

示例1: getDescriptors

 public function getDescriptors()
 {
     if ($this->disableOutput) {
         $nullstream = fopen('/dev/null', 'c');
         return array(array('pipe', 'r'), $nullstream, $nullstream);
     }
     if ($this->ttyMode) {
         return array(array('file', '/dev/tty', 'r'), array('file', '/dev/tty', 'w'), array('file', '/dev/tty', 'w'));
     }
     if ($this->ptyMode && Process::isPtySupported()) {
         return array(array('pty'), array('pty'), array('pty'));
     }
     return array(array('pipe', 'r'), array('pipe', 'w'), array('pipe', 'w'));
 }
开发者ID:VicDeo,项目名称:poc,代码行数:14,代码来源:UnixPipes.php

示例2: getDescriptors

 /**
  * Returns an array of descriptors for the use of proc_open.
  *
  * @return array
  */
 public function getDescriptors()
 {
     if ($this->disableOutput) {
         $nullstream = fopen(defined('PHP_WINDOWS_VERSION_BUILD') ? 'NUL' : '/dev/null', 'c');
         return array(array('pipe', 'r'), $nullstream, $nullstream);
     }
     if ($this->useFiles) {
         // We're not using pipe on Windows platform as it hangs (https://bugs.php.net/bug.php?id=51800)
         // We're not using file handles as it can produce corrupted output https://bugs.php.net/bug.php?id=65650
         // So we redirect output within the commandline and pass the nul device to the process
         return array(array('pipe', 'r'), array('file', 'NUL', 'w'), array('file', 'NUL', 'w'));
     }
     if ($this->ttyMode) {
         return array(array('file', '/dev/tty', 'r'), array('file', '/dev/tty', 'w'), array('file', '/dev/tty', 'w'));
     } elseif ($this->ptyMode && Process::isPtySupported()) {
         return array(array('pty'), array('pty'), array('pty'));
     }
     return array(array('pipe', 'r'), array('pipe', 'w'), array('pipe', 'w'));
 }
开发者ID:anthrotech,项目名称:laravel_sample,代码行数:24,代码来源:ProcessPipes.php

示例3: testPTYCommand

 public function testPTYCommand()
 {
     if (!Process::isPtySupported()) {
         $this->markTestSkipped('PTY is not supported on this operating system.');
     }
     $process = $this->getProcess('echo "foo"');
     $process->setPty(true);
     $process->run();
     $this->assertSame(Process::STATUS_TERMINATED, $process->getStatus());
     $this->assertEquals("foo\r\n", $process->getOutput());
 }
开发者ID:Ener-Getick,项目名称:symfony,代码行数:11,代码来源:ProcessTest.php

示例4: getDescriptors

 /**
  * Returns an array of descriptors for the use of proc_open.
  *
  * @return array
  */
 public function getDescriptors()
 {
     if ($this->useFiles) {
         return array(array('pipe', 'r'), $this->fileHandles[Process::STDOUT], array('pipe', 'w'));
     }
     if ($this->ttyMode) {
         return array(array('file', '/dev/tty', 'r'), array('file', '/dev/tty', 'w'), array('file', '/dev/tty', 'w'));
     } elseif ($this->ptyMode && Process::isPtySupported()) {
         return array(array('pty'), array('pty'), array('pty'));
     }
     return array(array('pipe', 'r'), array('pipe', 'w'), array('pipe', 'w'));
 }
开发者ID:romainneutron,项目名称:symfony,代码行数:17,代码来源:ProcessPipes.php


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