require_once 'Net/UserAgent/Mobile.php';
// or $agent = &Net_UserAgent_Mobile::factory(); // to get from $_SERVER
if ($agent->isDoCoMo()) {
// or if ($agent->getName() == 'DoCoMo')
// or if (strtolower(get_class($agent)) == 'http_mobileagent_docomo')
// it's NTT DoCoMo i-mode
// see what's available in Net_UserAgent_Mobile_DoCoMo
} elseif ($agent->isVodafone()) {
// it's Vodafone(J-PHONE)
// see what's available in Net_UserAgent_Mobile_Vodafone
} elseif ($agent->isEZweb()) {
// it's KDDI/EZWeb
// see what's available in Net_UserAgent_Mobile_EZweb
} else {
// may be PC
// $agent is Net_UserAgent_Mobile_NonMobile
}
$display = $agent->getDisplay(); // Net_UserAgent_Mobile_Display
if ($display->isColor()) {
...
}