$ _SERVER è una delle variabili globali PHP, denominata Superglobals, che contiene informazioni su server e ambienti di esecuzione. Queste sono variabili predefinite, quindi sono sempre accessibili da qualsiasi classe, funzione o file.
Le voci qui sono riconosciute dai server Web, ma non esiste alcuna garanzia che ciascun server Web riconosca ogni Superglobal. Questi tre array PHP $ _SERVER si comportano tutti in modo simile: restituiscono informazioni sul file in uso. Se esposti a diversi scenari, in alcuni casi si comportano diversamente. Questi esempi possono aiutarti a decidere quale sia la migliore per ciò di cui hai bisogno. Un elenco completo di array $ _SERVER è disponibile sul sito Web di PHP.
PHP_SELF è il nome dello script attualmente in esecuzione.
Quando usi $ _SERVER ['PHP_SELF'], restituisce il nome del file /example/index.php sia con che senza il nome del file digitato nell'URL. Quando le variabili sono state aggiunte alla fine, sono state troncate e di nuovo /example/index.php è stato restituito. L'unica versione che ha prodotto un risultato diverso ha le directory aggiunte dopo il nome del file. In quel caso, ha restituito quelle directory.
REQUEST_URI si riferisce all'URI fornito per accedere a una pagina.
Tutti questi esempi hanno restituito esattamente ciò che è stato inserito per l'URL. Restituiva un semplice /, il nome del file, le variabili e le directory aggiunte, proprio come sono state immesse.
SCRIPT_NAME è il percorso dello script corrente. Questo è utile per le pagine che devono puntare a se stesse.
Tutti i casi qui hanno restituito solo il nome del file /example/index.php indipendentemente dal fatto che sia stato digitato, non digitato o che sia stato aggiunto qualcosa.