Domanda

in Questa domanda su superuser mi è stata avvisata che è meglio eseguireScript scritti in un linguaggio interpretato (PHP, Python, ecc.) Eseguendo esplicitamente l'interpretazione e fornendo lo script come argomento, come:

> php script.php

Piuttosto che aggiungere una linea allo script per dire al sistema operativo di eseguirlo, come:

#!/usr/bin/php
<?php
echo "hello world";
?>
.

Perché è vero?La mia intuizione mi dice che è più sicuro, nel caso in cui lo script sia spostato in un sistema in cui l'eseguibile dell'interprete si trova in un percorso diverso, ma è l'unica ragione?

È stato utile?

Soluzione

La portabilità è migliorata se si utilizza questo Idiom:

#!/usr/bin/env php
.

Ma ha inconvenienti di sé;Vedi una discussione più lunga a http://sites.google.com/site/frankpzh/ Knowledge-biblioteca / shebang

Altri suggerimenti

Diversi percorsi sarebbero la ragione principale, specialmente quando i binari iniziano a essere memorizzati in percorsi denotati X64 o installato in / usr / locale / bin / php.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top