Я считаю, что самый простой подход заключается в использовании функции format()
.
Например:
a = 13.949999999999999
format(a, '.2f')
13.95
Это создает число с плавающей точкой в виде строки, округленной до двух десятичных знаков точек.
::1
- фактический IP. Это адрес обратной связи ipv6 (то есть localhost). Если вы используете ipv4, это будет 127.0.0.1
.
Если вы хотите получить другой IP-адрес, вам нужно будет подключиться к серверу через другой сетевой интерфейс.
Если вы пытаетесь запустить localhost, этот ответ исправит вашу проблему. Только несколько изменений на
apache2/httpd.conf
выполняют поиск всех слов «прослушать» ex:
Listen 80
Сделайте так:
Listen 127.0.0.1:80
, чем перезапустите apache
$_SERVER[REMOTE_ADDR]
покажет Listen 127.0.0.1
, вы можете увидеть ответ в этой подробной ссылке ответа
Посмотрите на вывод phpinfo()
. Если адрес не указан на этой странице, адрес недоступен непосредственно через PHP.
Если вы хотите получить IP-адрес пользователя, вы можете сделать что-то вроде:
<?php
if(!empty($_SERVER['HTTP_CLIENT_IP'])){
$ip=$_SERVER['HTTP_CLIENT_IP'];
}
elseif(!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){
$ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
}
else{
$ip=$_SERVER['REMOTE_ADDR'];
}
?>
<?php echo "<br />".$ip;?>
Он получит фактический IP-адрес пользователя, независимо от прокси и т. д.
Простой ответ: вы используете его на локальном сервере. Попробуйте запустить
function getUserIpAddr(){
if(!empty($_SERVER['HTTP_CLIENT_IP'])){
//ip from share internet
$ip = $_SERVER['HTTP_CLIENT_IP'];
}elseif(!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){
//ip pass from proxy
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
}else{
$ip = $_SERVER['REMOTE_ADDR'];
}
return $ip;
}
echo 'User Real IP - '.getUserIpAddr();
на реальном сервере. Или вы также можете использовать онлайн-исполнитель php.
$ _ SERVER ['REMOTE_ADDR'] - это IP-адрес клиента.
$ _ SERVER ['SERVER_ADDR'] - это IP-адрес сервера.
Ссылка: http://php.net/manual/en/reserved.variables.server.php