[MyMiniCity] 街の状況に応じて自動的にアクセスを振り分けるPHPスクリプト
2008-01-03
MyMiniCityで、街の状況に応じて自動的に必要なURLにリダイレクトするPHPスクリプトを書いてみた。既に同じことはいろんな人がやってるけど。
http://tools.liosk.net/MyMiniCity.php?city=liosk
?city=lioskの部分を書き換えれば別の都市にアクセスできます。
仕組み
http://liosk.myminicity.com/xmlにアクセスすれば街の状況をXMLで取得できるので、そこでUnemployment, Transport, Criminality, Pollutionを調べて、一番問題があるURLにリダイレクトするだけの単純な構造。問題がなければ人口増加用のURLにリダイレクトする。Increase businessはいまいち使いかたがわからないし、しばらくは必要がないから無視。
ソース
とりあえずPHPのソースは晒しておきます。ものすごく単純なコードですが。
<?php
$city = empty($_GET['city']) ? 'liosk' : rawurlencode($_GET['city']);
$base = 'http://' . $city . '.myminicity.com/';
$xml = simplexml_load_file($base . 'xml');
$map = array(
'ind' => (int)(string)$xml->unemployment,
'tra' => 100 - (string)$xml->transport,
'sec' => (int)(string)$xml->criminality,
'env' => (int)(string)$xml->pollution
);
$max = 0;
$sol = '';
foreach ($map as $key => $val) {
if ($max < $val) {
$sol = $key;
$max = $val;
}
}
header('Location: ' . $base . $sol);