Actually. most newer browsers include some OS data in their requests these days. Try using ...
$_SERVER['HTTP_USER_AGENT'];
or, depending on your PHP version, you may need to use ...
$HTTP_SERVER_VARS['HTTP_USER_AGENT'];
It will return something like this for most browsers ...
Mozilla/4.0 (compatible; MSIE 6.0; Windows 98)