radarrplexorganizrnginxsonarrdashboardembycouchpotatonzbgetbookmarkapplication-dashboardmuximuxlandingpagestartpagelandinghtpcserverhomepagesabnzbdheimdall
		
		
		
		
			You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							94 lines
						
					
					
						
							2.3 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							94 lines
						
					
					
						
							2.3 KiB
						
					
					
				| <?php | |
| 
 | |
| /* | |
|  * This file is part of the Symfony package. | |
|  * | |
|  * (c) Fabien Potencier <fabien@symfony.com> | |
|  * | |
|  * For the full copyright and license information, please view the LICENSE | |
|  * file that was distributed with this source code. | |
|  */ | |
| 
 | |
| namespace Symfony\Component\Process; | |
| 
 | |
| /** | |
|  * An executable finder specifically designed for the PHP executable. | |
|  * | |
|  * @author Fabien Potencier <fabien@symfony.com> | |
|  * @author Johannes M. Schmitt <schmittjoh@gmail.com> | |
|  */ | |
| class PhpExecutableFinder | |
| { | |
|     private $executableFinder; | |
| 
 | |
|     public function __construct() | |
|     { | |
|         $this->executableFinder = new ExecutableFinder(); | |
|     } | |
| 
 | |
|     /** | |
|      * Finds The PHP executable. | |
|      * | |
|      * @param bool $includeArgs Whether or not include command arguments | |
|      * | |
|      * @return string|false The PHP executable path or false if it cannot be found | |
|      */ | |
|     public function find($includeArgs = true) | |
|     { | |
|         $args = $this->findArguments(); | |
|         $args = $includeArgs && $args ? ' '.implode(' ', $args) : ''; | |
| 
 | |
|         // HHVM support | |
|         if (defined('HHVM_VERSION')) { | |
|             return (getenv('PHP_BINARY') ?: PHP_BINARY).$args; | |
|         } | |
| 
 | |
|         // PHP_BINARY return the current sapi executable | |
|         if (PHP_BINARY && \in_array(PHP_SAPI, array('cli', 'cli-server', 'phpdbg'), true)) { | |
|             return PHP_BINARY.$args; | |
|         } | |
| 
 | |
|         if ($php = getenv('PHP_PATH')) { | |
|             if (!@is_executable($php)) { | |
|                 return false; | |
|             } | |
| 
 | |
|             return $php; | |
|         } | |
| 
 | |
|         if ($php = getenv('PHP_PEAR_PHP_BIN')) { | |
|             if (@is_executable($php)) { | |
|                 return $php; | |
|             } | |
|         } | |
| 
 | |
|         if (@is_executable($php = PHP_BINDIR.('\\' === DIRECTORY_SEPARATOR ? '\\php.exe' : '/php'))) { | |
|             return $php; | |
|         } | |
| 
 | |
|         $dirs = array(PHP_BINDIR); | |
|         if ('\\' === DIRECTORY_SEPARATOR) { | |
|             $dirs[] = 'C:\xampp\php\\'; | |
|         } | |
| 
 | |
|         return $this->executableFinder->find('php', false, $dirs); | |
|     } | |
| 
 | |
|     /** | |
|      * Finds the PHP executable arguments. | |
|      * | |
|      * @return array The PHP executable arguments | |
|      */ | |
|     public function findArguments() | |
|     { | |
|         $arguments = array(); | |
| 
 | |
|         if (defined('HHVM_VERSION')) { | |
|             $arguments[] = '--php'; | |
|         } elseif ('phpdbg' === PHP_SAPI) { | |
|             $arguments[] = '-qrr'; | |
|         } | |
| 
 | |
|         return $arguments; | |
|     } | |
| }
 | |
| 
 |