php cakephp ip-address

CakePHP obtiene la dirección IP



ip-address (3)

¿Cómo puedo obtener la dirección IP del cliente en CakePHP? Sería $_SERVER[''REMOTE_ADDR''] en PHP simple.

Pensé que era como todos los $_SERVER vars de $_SERVER y se puede acceder utilizando env(''VAR_NAME'') , o getClientIP() en CakePHP, pero no devuelve los mismos resultados.

¿Algunas ideas?


CakePHP 1.x :

RequestHandlerComponent::getClientIp();

Entonces para aclarar:

public $components = array( ''RequestHandler'' );

Luego en el método del controlador:

$this->RequestHandler->getClientIp();

CakePHP 2.x :

RequestHandler::getClientIp() está en desuso; puede obtener la dirección IP del cliente del objeto CakeRequest :

$this->request->clientIp();


Si necesita obtener la dirección IP desde un modelo, $this->request->getClientIp() no funcionará, arrojando:

Error: Llamar a una función miembro clientIp () en un objeto no objeto

Use Router::getRequest()->clientIp() lugar.

Básicamente, Router::getRequest() puede servir como reemplazo de Modelo de la $this->request del Controlador


Uso de CakePHP 3.x:

//in controller $ip = $this->request->clientIp();

Uso de CakePHP 2.x

//in controller $this->request->ClientIp();

Uso de CakePHP 1.x

//in controller RequestHandlerComponent::getClientIP();