3) Beim Aufruf der Seite wird die index.php geladen, diese lädt die loader.php (include/includes/loader.php), welche wiederum die statistic.php (include\includes\func) lädt.
In der statistic.php ist alles Interessante zu finden.
Dort steht übrigens auch die Antwort zu deiner zweiten Frage.
2)
function site_statistic_get_os($useragent) {
$osArray = array(
'Windows Phone' => '=Windows Phone=',
'Windows 7' => '=Windows NT 6\.1|Windows 7=',
'Windows 8' => '=Windows NT 6\.2|Windows 8=',
'Windows Vista' => '=Windows NT 6\.0|Windows Vista=',
'Windows XP' => '=Windows NT 5\.1|Windows XP=',
'Android' => '=Android=',
'Linux' => '=Linux=',
'SunOs' => '=SunOS=',
'iPad' => '=iPad=',
'iPhone' => '=iPhone=',
'Mac OS' => '=Mac OS X=',
'Windows Server 2003\\Windows XP x64' => '=Windows NT 5\.2|Windows Server 2003|Windows XP x64=',
'Windows 2000' => '=Windows NT 5\.0|Windows 2000=',
'Windows NT' => '=Windows NT 4\.0|Windows NT|WinNT4\.0=',
'Windows 98' => '=Windows 98=',
'Windows 95' => '=Windows 95=',
'Macintosh' => '=Mac_PowerPC|Macintosh='
);
foreach ($osArray as $os => $regex) {
if (preg_match($regex, $useragent)) {
return $os;
}
}
return 0;
}
In Zeile 22-26 wird der aktuelle User-agent mit den Einträgen aus osArray verglichen. Falls keiner passt, wird Zeile 24 nie ausgeführt und letztendlich Zeile 27 ausgeführt - Rückgabewert 0. Daher kommt der 0-Eintrag in der Statistik (siehe Aufruf der Funktion in statistic.php, Zeile 131). Das heißt also, dass in deinem Fall in den meisten Fällen kein passender Eintrag gefunden wurde. Ich schätze mal das sind Bots bei denen im User-agent kein OS angegeben ist.