Get IP
string Core_Email::_get_ip( )
string
protected function _get_ip()
{
if ($this->_IP !== false)
{
return $this->_IP;
}
$cip = ( ! empty($_SERVER['HTTP_CLIENT_IP'])) ? $_SERVER['HTTP_CLIENT_IP'] : false;
$rip = ( ! empty($_SERVER['REMOTE_ADDR'])) ? $_SERVER['REMOTE_ADDR'] : false;
if ($cip) $this->_IP = $cip;
elseif ($rip) $this->_IP = $rip;
else
{
$fip = ( ! empty($_SERVER['HTTP_X_FORWARDED_FOR'])) ? $_SERVER['HTTP_X_FORWARDED_FOR'] : false;
if ($fip)
{
$this->_IP = $fip;
}
}
if (strpos($this->_IP, ',') !== false)
{
$x = explode(',', $this->_IP);
$this->_IP = end($x);
}
if ( ! preg_match('/^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$/', $this->_IP))
{
$this->_IP = '0.0.0.0';
}
return $this->_IP;
}