Risposte:
Non è necessario che nulla abbia a che fare con PHP vicino alla c:\windows
cartella.
Se lo fai, servirà solo a rovinarti quando aggiorni PHP a una nuova versione.
Se esegui il CD nella cartella in cui è installato PHP e lo fai php --ini
, leggerà il file php.ini dalla cartella in cui ti trovi.
D:\wamp\bin\php\php5.5.12>php --ini
Configuration File (php.ini) Path: C:\Windows
Loaded Configuration File: D:\wamp\bin\php\php5.5.12\php.ini
Scan for additional .ini files in: (none)
Additional .ini files parsed: (none)
Penso che sia anche una cattiva idea mettere anche la cartella di installazione di PHP nel PERCORSO di Windows.
Tutto ciò di cui hai bisogno è un piccolo file batch che imposterà il tuo PERCORSO per la durata della finestra di comando che stai usando e lo inserisca in una delle cartelle che si trova già nel PERCORSO di Windows.
Quindi supponendo che PHP sia installato in C:\php
questo è il file batch
phppath.cmd
PATH=%PATH%;C:\php
php --ini
php -v
E poi esegui questo file batch ogni volta che apri una finestra di comando e desideri eseguire un codice PHP e il tuo ambiente viene configurato. Puoi anche aggiungere altre cose a questo file batch quando hai bisogno di altre cose aggiunte al tuo ambiente come Composer ecc.
Secondo la documentazione:
Il file di configurazione (php.ini) viene letto all'avvio di PHP. Per le versioni del modulo server di PHP, ciò accade solo una volta all'avvio del server web. Per le versioni CGI e CLI, succede ad ogni chiamata.
php.ini è cercato in queste posizioni (in ordine):
- Posizione specifica del modulo SAPI (direttiva PHPIniDir in Apache 2, opzione della riga di comando -c in CGI e CLI, parametro php_ini in NSAPI, variabile d'ambiente PHP_INI_PATH in THTTPD)
- La variabile d'ambiente PHPRC. Prima di PHP 5.2.0, questo veniva verificato dopo la chiave di registro menzionata di seguito.
- A partire da PHP 5.2.0, la posizione del file php.ini può essere impostata per diverse versioni di PHP. Le seguenti chiavi di registro vengono esaminate nell'ordine: [HKEY_LOCAL_MACHINE \ SOFTWARE \ PHP \ xyz], [HKEY_LOCAL_MACHINE \ SOFTWARE \ PHP \ xy] e [HKEY_LOCAL_MACHINE \ SOFTWARE \ PHP \ x], dove x, y e z indicano il maggiore PHP, versioni secondarie e di rilascio. Se esiste un valore per IniFilePath in una di queste chiavi, il primo trovato verrà utilizzato come posizione di php.ini (solo Windows).
- [HKEY_LOCAL_MACHINE \ SOFTWARE \ PHP], valore di IniFilePath (solo Windows).
- Directory di lavoro corrente (tranne CLI).
- La directory del server Web (per i moduli SAPI) o la directory di PHP (altrimenti in Windows).
- Directory di Windows (C: \ windows o C: \ winnt) (per Windows) o opzione di tempo di compilazione --with-config-file-path.
Dovresti provare la PHPRC
variabile di ambiente o la chiave di registro [HKEY_LOCAL_MACHINE\SOFTWARE\PHP]
.
Ho provato di tutto senza successo. ha cambiato apache httpd.conf, php.ini e molti altri tentativi, ha sempre portato a File di configurazione caricato - (nessuno). Infine, ho copiato tutti i file dalla directory php alla directory C: \ Programmi (x86) \ Apache Software Foundation \ Apache2.2 \ bin e tutto ha iniziato a funzionare. Perfettamente. Purtroppo non è la soluzione perfetta, ma ha funzionato.