Ho uno script PHP che può essere posizionato su un sistema Windows o Linux. Devo eseguire comandi diversi in entrambi i casi.
Come posso rilevare in quale ambiente mi trovo? (preferibilmente qualcosa di PHP piuttosto che hack di sistema intelligenti)
Aggiornare
Per chiarire, lo script è in esecuzione dalla riga di comando.
\strncasecmp(\PHP_OS, 'WIN', 3) === 0
,\strtoupper(\substr(\PHP_OS, 0, 3)) === 'WIN'
e\stripos(\PHP_OS, 'WIN')
sono al di sotto del 15%. Dato che tutte e tre le soluzioni richiedono solo circa 100 nanosecondi, si tratterebbe comunque di una micro-ottimizzazione. Quindi scegli la soluzione che preferisci. Infine, potresti obiettare che\strncasecmp(\PHP_OS, 'WIN', 3) === 0
è il più leggibile.