Comment obtenir le chemin complet de l'interpréteur php / binaire sans accès au shell
Comment puis-je obtenir le chemin d'accès complet de php à partir d'un script php (pas de ligne de commande d'accès).
Ce que je dois faire est:
$foo = "/usr/bin/php";
echo $foo;
Mais j'ai besoin d'obtenir le chemin d'accès de la première afin que je puisse l'attribuer à toto.
Si vous avez une solution qui fonctionne sur Windows et nix encore mieux, mais si pas, nix serait bien.
Avant de vous demander,
- Demander à l'hôte est hors de question
- Pas d'accès shell
Le problème est que l'aide qu'il produit ne fonctionne pas. Par exemple PHP_BINDIR sera de sortie /usr/bin, mais à l'aide de /usr/bin/php ne va pas aider. Le code complet est:
exec("php-cli $path_to_file > /dev/null 2>/dev/null &");
Mais même en utilisant le fichier /usr/bin/php-cli ne fonctionne pas même si on me dit que. J'ai utiliser:
exec("/opt/php52/bin/php-cli $path_to_file > /dev/null 2>/dev/null &");
Pour cet hôte particulier par exemple.
source d'informationauteur Chris81
Vous devez vous connecter pour publier un commentaire.
Vous pouvez trouver l'exécutable PHP chemin avec cette constante:
Depuis PHP 5.4, vous pouvez obtenir le chemin vers l'exécutable effectivement en cours d'exécution actuellement avec cette constante:
http://php.net/manual/en/reserved.constants.php
Les utilisateurs de Linux peuvent essayer les
whereis
commande.J'ai eu cette situation avec un IDE PHP.
Sur Windows, je vous suggère le fragment de code suivant:
Sur unix le shell de commande doit probablement faire usage de
ps
ses pas commun pour un hôte de donner accès à la racine de ses utilisateurs. Très probablement, vous ne pouvez pas accéder à n'importe quoi au-dessous de /var/www