Verzeichnisstruktur phpBB-3.3.15


Veröffentlicht
28.08.2024

So funktioniert es


Auf das letzte Element klicken. Dies geht jeweils ein Schritt zurück

Auf das Icon klicken, dies öffnet das Verzeichnis. Nochmal klicken schließt das Verzeichnis.
Auf den Verzeichnisnamen klicken, dies zeigt nur das Verzeichnis mit Inhalt an

(Beispiel Datei-Icons)

Auf das Icon klicken um den Quellcode anzuzeigen

PhpExecutableFinder.php

Zuletzt modifiziert: 02.04.2025, 15:02 - Dateigröße: 2.32 KiB


01  <?php
02   
03  /*
04   * This file is part of the Symfony package.
05   *
06   * (c) Fabien Potencier <fabien@symfony.com>
07   *
08   * For the full copyright and license information, please view the LICENSE
09   * file that was distributed with this source code.
10   */
11   
12  namespace Symfony\Component\Process;
13   
14  /**
15   * An executable finder specifically designed for the PHP executable.
16   *
17   * @author Fabien Potencier <fabien@symfony.com>
18   * @author Johannes M. Schmitt <schmittjoh@gmail.com>
19   */
20  class PhpExecutableFinder
21  {
22      private $executableFinder;
23   
24      public function __construct()
25      {
26          $this->executableFinder = new ExecutableFinder();
27      }
28   
29      /**
30       * Finds The PHP executable.
31       *
32       * @param bool $includeArgs Whether or not include command arguments
33       *
34       * @return string|false The PHP executable path or false if it cannot be found
35       */
36      public function find($includeArgs = true)
37      {
38          $args = $this->findArguments();
39          $args = $includeArgs && $args ? ' '.implode(' ', $args) : '';
40   
41          // HHVM support
42          if (\defined('HHVM_VERSION')) {
43              return (getenv('PHP_BINARY') ?: \PHP_BINARY).$args;
44          }
45   
46          // PHP_BINARY return the current sapi executable
47          if (\PHP_BINARY && \in_array(\PHP_SAPI, ['cli', 'cli-server', 'phpdbg'], true)) {
48              return \PHP_BINARY.$args;
49          }
50   
51          if ($php = getenv('PHP_PATH')) {
52              if (!@is_executable($php)) {
53                  return false;
54              }
55   
56              return $php;
57          }
58   
59          if ($php = getenv('PHP_PEAR_PHP_BIN')) {
60              if (@is_executable($php)) {
61                  return $php;
62              }
63          }
64   
65          if (@is_executable($php = \PHP_BINDIR.('\\' === \DIRECTORY_SEPARATOR ? '\\php.exe' : '/php'))) {
66              return $php;
67          }
68   
69          $dirs = [\PHP_BINDIR];
70          if ('\\' === \DIRECTORY_SEPARATOR) {
71              $dirs[] = 'C:\xampp\php\\';
72          }
73   
74          return $this->executableFinder->find('php', false, $dirs);
75      }
76   
77      /**
78       * Finds the PHP executable arguments.
79       *
80       * @return array The PHP executable arguments
81       */
82      public function findArguments()
83      {
84          $arguments = [];
85   
86          if (\defined('HHVM_VERSION')) {
87              $arguments[] = '--php';
88          } elseif ('phpdbg' === \PHP_SAPI) {
89              $arguments[] = '-qrr';
90          }
91   
92          return $arguments;
93      }
94  }
95