For building a unix/dos specific script I need to know on which kind of operating system I am.
How do i get this information?phpinfo();
tells me a lot more and not very clear whether I'm running on unix or not.
If you're talking about PHP development, there's pretty robust support in all of the operating systems. Linux really starts shining if you're monkeying with the source code and/or building PHP extensions (it's possible on Windows, but VERY unpleasant).
PHP has many predefined constants that are often useful.
Here, PHP_OS
is the one you are looking for.
For instance, on my current machine, this code :
var_dump(PHP_OS);
Gives :
string 'Linux' (length=5)
You have some examples and comparisons with what the php_uname
function can get you on the manual page of php_uname
; for instance (quoting) :
<?php echo php_uname(); echo PHP_OS; /* Some possible outputs: Linux localhost 2.4.21-0.13mdk #1 Fri Mar 14 15:08:06 EST 2003 i686 Linux FreeBSD localhost 3.2-RELEASE #15: Mon Dec 17 08:46:02 GMT 2001 FreeBSD Windows NT XN1 5.1 build 2600 WINNT */ if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') { echo 'This is a server using Windows!'; } else { echo 'This is a server not using Windows!'; }
That page also says :
For the name of just the operating system, consider using the
PHP_OS
constant, but keep in mind this constant will contain the operating system PHP was built on.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With