
jpmaster
Gamma
Programador
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Verificado por Binance
hace tiempo encontre una clase open source, para comprobar si un usuario viene desde un dispositivo movil
aqui les traigo el codigo para los que necesiten en su proyecto, esta completamente funcional si desean comprobarlo pueden ingresar con cualkier dispositivo movil que tengan a la mano a mi web Enlace eliminado espero que les sirva, cualquier consulta comenten este post, si les gusto el tema den un like nada les cuesta 😀
clase php
me olvidaba tambien pueden condicionar si solamente quieren comprobar si vienen desde android blackberry etc etc por ejemplo en vez de :
aqui les traigo el codigo para los que necesiten en su proyecto, esta completamente funcional si desean comprobarlo pueden ingresar con cualkier dispositivo movil que tengan a la mano a mi web Enlace eliminado espero que les sirva, cualquier consulta comenten este post, si les gusto el tema den un like nada les cuesta 😀
clase php
PHP:
<?php
/**
* Mobile Detect
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
*/
class Mobile_Detect
{
protected $accept;
protected $userAgent;
protected $isMobile = false;
protected $isAndroid = null;
protected $isAndroidtablet = null;
protected $isIphone = null;
protected $isIpad = null;
protected $isBlackberry = null;
protected $isBlackberrytablet = null;
protected $isOpera = null;
protected $isPalm = null;
protected $isWindows = null;
protected $isWindowsphone = null;
protected $isGeneric = null;
protected $devices = array(
"android" => "android.*mobile",
"androidtablet" => "android(?!.*mobile)",
"blackberry" => "blackberry",
"blackberrytablet" => "rim tablet os",
"iphone" => "(iphone|ipod)",
"ipad" => "(ipad)",
"palm" => "(avantgo|blazer|elaine|hiptop|palm|plucker|xiino)",
"windows" => "windows ce; (iemobile|ppc|smartphone)",
"windowsphone" => "windows phone os",
"generic" => "(kindle|mobile|mmp|midp|pocket|psp|symbian|smartphone|treo|up.browser|up.link|vodafone|wap|opera mini)"
);
public function __construct()
{
$this->userAgent = $_SERVER['HTTP_USER_AGENT'];
$this->accept = $_SERVER['HTTP_ACCEPT'];
if (isset($_SERVER['HTTP_X_WAP_PROFILE']) || isset($_SERVER['HTTP_PROFILE'])) {
$this->isMobile = true;
} elseif (strpos($this->accept, 'text/vnd.wap.wml') > 0 || strpos($this->accept, 'application/vnd.wap.xhtml+xml') > 0) {
$this->isMobile = true;
} else {
foreach ($this->devices as $device => $regexp) {
if ($this->isDevice($device)) {
$this->isMobile = true;
}
}
}
}
/**
* Overloads isAndroid() | isAndroidtablet() | isIphone() | isIpad() | isBlackberry() | isBlackberrytablet() | isPalm() | isWindowsphone() | isWindows() | isGeneric() through isDevice()
*
* @param string $name
* @param array $arguments
* @return bool
*/
public function __call($name, $arguments)
{
$device = substr($name, 2);
if ($name == "is" . ucfirst($device) && array_key_exists(strtolower($device), $this->devices)) {
return $this->isDevice($device);
} else {
trigger_error("Method $name not defined", E_USER_WARNING);
}
}
/**
* Returns true if any type of mobile device detected, including special ones
* @return bool
*/
public function isMobile()
{
return $this->isMobile;
}
protected function isDevice($device)
{
$var = "is" . ucfirst($device);
$return = $this->$var === null ? (bool) preg_match("/" . $this->devices[strtolower($device)] . "/i", $this->userAgent) : $this->$var;
if ($device != 'generic' && $return == true) {
$this->isGeneric = false;
}
return $return;
}
}
/*
//modo de uso
include("Mobile_Detect.php");
$detectar_movil = new Mobile_Detect();
if ($detectar_movil->isMobile()) {
// redireccionar a la version movil m.esmp3.net
}
*/
me olvidaba tambien pueden condicionar si solamente quieren comprobar si vienen desde android blackberry etc etc por ejemplo en vez de :
PHP:
if ($detectar_movil->isAndroid()) {
// redireccionar a la version movil m.esmp3.net
}
Última edición: