Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php如果else条件不工作_Php_Html - Fatal编程技术网

php如果else条件不工作

php如果else条件不工作,php,html,Php,Html,此代码用于获取IP和位置详细信息 在这里,我的问题是,我得到的大陆是,欧盟,NA,SA 我需要改变亚洲,欧盟和欧洲,北美和南美。如何使用if-else条件进行此操作?您可以使用$1变量上的方法来替换所需的值 $user_ip = getenv('REMOTE_ADDR'); $geo = unserialize(file_get_contents("http://www.geoplugin.net/php.gp?ip=$user_ip")); $city = $geo["geoplugin_

此代码用于获取IP和位置详细信息

在这里,我的问题是,我得到的大陆是,欧盟,NA,SA

我需要改变亚洲,欧盟和欧洲,北美和南美。如何使用if-else条件进行此操作?

您可以使用$1变量上的方法来替换所需的值

$user_ip = getenv('REMOTE_ADDR');

$geo = unserialize(file_get_contents("http://www.geoplugin.net/php.gp?ip=$user_ip"));

$city = $geo["geoplugin_city"];

$region = $geo["geoplugin_regionName"];

$country = $geo["geoplugin_countryName"];

$continent = $geo["geoplugin_continentCode"];

$continent1 = $continent;

echo "IP: " .$user_ip. "<br>";

echo "City: " .$city. "<br>";

echo "Region: " .$region. "<br>";

echo "Country: " .$country. "<br>";

echo "Continent: " .$continent1. "<br>";
您可以使用$1变量上的方法将值替换为所需的值

$user_ip = getenv('REMOTE_ADDR');

$geo = unserialize(file_get_contents("http://www.geoplugin.net/php.gp?ip=$user_ip"));

$city = $geo["geoplugin_city"];

$region = $geo["geoplugin_regionName"];

$country = $geo["geoplugin_countryName"];

$continent = $geo["geoplugin_continentCode"];

$continent1 = $continent;

echo "IP: " .$user_ip. "<br>";

echo "City: " .$city. "<br>";

echo "Region: " .$region. "<br>";

echo "Country: " .$country. "<br>";

echo "Continent: " .$continent1. "<br>";
试试这个-

switch($continent1)
{
    case 'AS':
       echo "Continent: Asia";
      break;
    case 'EU':
       echo "Continent: Europe";
       break;
    case 'NA':
       echo "Continent: North America";
       break;
    case 'SA':
       echo "South America";
       break;
    default:
       echo "nothing matched"
      break;
}
试试这个-

switch($continent1)
{
    case 'AS':
       echo "Continent: Asia";
      break;
    case 'EU':
       echo "Continent: Europe";
       break;
    case 'NA':
       echo "Continent: North America";
       break;
    case 'SA':
       echo "South America";
       break;
    default:
       echo "nothing matched"
      break;
}

如果在数据库中没有此功能,可以尝试以下操作:

switch ($continent1) {
    case "AS":
        $continent1 = 'Asia';
        break;
    case "EU":
        $continent1 = 'Europe';
        break;
    case "NA":
        $continent1 = 'North America';
        break;
    default:
        $continent1 = '';
}

这比switch语句要简洁得多

如果在数据库中没有此功能,您可以尝试以下操作:

switch ($continent1) {
    case "AS":
        $continent1 = 'Asia';
        break;
    case "EU":
        $continent1 = 'Europe';
        break;
    case "NA":
        $continent1 = 'North America';
        break;
    default:
        $continent1 = '';
}
$arr_continent = array('AS'=>'Asia','EU'=>'Europe','NA'=>'North America','SA'=>'South America');
echo "Continent: " .$arr_continent[$continent1]. "<br />";
这比switch语句要简洁得多

$arr_continent = array('AS'=>'Asia','EU'=>'Europe','NA'=>'North America','SA'=>'South America');
echo "Continent: " .$arr_continent[$continent1]. "<br />";

您可以不使用if/else或switch语句创建函数


如果您需要一次又一次地执行类似的任务,此代码还将提高重用能力

您可以创建一个函数,而无需使用if/else或switch语句


如果您需要一次又一次地执行类似的任务,此代码还将提高重用能力

当然,它不起作用,代码中没有if/else语句……您需要使用switch case来实现此功能,而不使用if/else;使用一个查找数组和一个if,以防万一你的数组不是穷举的。Bv202我不是说它不能与上面的代码一起工作,你读了我的问题了吗?我问如何写……当然它不起作用了,代码中没有if/else语句……你需要使用switch case来实现这一点,不要使用if/else;使用一个查找数组和一个if,以防万一你的数组不是穷举的。Bv202我不是说它不能与上面的代码一起工作,你读了我的问题了吗?我问如何写作。。