- Home
- Categorie
- Coding e Sistemistica
- PHP
- Path che non funziona su Linux
-
Path che non funziona su Linux
Ciao a tutti!! Sono dietro all'ennesimo problema per il passaggio da Win a Linux (che non ho).
Come devo trattare una stringa tipo:
"\Server2000\inetpub\wwwroot\Disegni\aaa1.jpg"perchè non mi crei problemi con Linux?
Con questa stringa devo effettuare il "file_exists" e poi vedo visualizzare l'immagine, se presente, con "src".Sò che devo sostituire le "" con "/" ma come funziona per quelle precedenti la scritta Server2000??
Grazie per l'aiuto
Stefano
-
la differenza di cui parli esiste ma non dipende da linux bensì dal server web normalmente usato con questo OS e cioè Apache....
sotto unix ( e linux quindi ) è vero che lo slash \ va sostituito con / per indicare le directory....
l'altra cosa di cui devi tener conto è che unix considera il primo entry nel filesystem come directory ROOT e cioè il punto di inizio da cui partire per localizzare tutti i file e le directory del filesystem...
per esempio se vuoi verificare l'esistenza di un file presente nella directory tmp sotto linux devi semplicemente usare file_exists("/tmp/nomefile")....
la cosa importante da notare è il primo slash /.....con quello slash tu dici al sistema di accedere alla directory tmp partendo però da root.....
nel tuo caso i file .jpg si trovano nella directory wwwroot che è la root directory di IIS....per Apache sotto linux esiste la stessa cosa....
per accedere alle directory che si trovano nella root directory di Apache ( che in genere all'interno del fs linux si trova in /var/www o /var/www/nome-vhost a seconda delle configurazioni e all'utilizzo o meno della funzionalità vhost ) puoi semplicemente usare i pathname relativi.....
immagina di avere messo il tuo script php nella root di Apache e tutti i file .jpg nella sottodirectory /img, per verificarne la presenza devi semplicemente usare file_exists("img/aaaa1.jpg")
nota che stavolta manca lo slash iniziale e questo indica al sistema che img va calcolata a partire dalla directory in cui si trova lo script e cioè /var/www
riguardo la stringa Server2000 si tratta di una particolarità di windows e sotto linux semplicemente sparisce
-
Perfetto, speigazione da 10 e lode!!!
Grazie mille, seguirò i Tuoi suggerimenti.Se non Ti disturbo vorrei sapere se esite un metodo per controllare l'esistenza di un file prima dell'UpLoad. Se non erro file_exists mi consente di controllare solamente i files presenti sul server, vero?
Grazie di nuovo
Stefano