Hallo Community,
ich stehe gerade vor einem etwas kleinerem Problem, welches mir keine Ruhe lässt. Ich habe mir eine kleine Funktion zusammen gebastelt, welche RegEx Patterns enthält und diese dann gegen den ermittelten Useragent prüft. Die normale Prüfung funktioniert einwandfrei, allerdings möchte ich auch gerne die Architektur (32bit oder 64bit) einbeziehen und genau da stehe ich etwas im Wald und finde meinen Fehler nicht.
Funktion:
Useragent:
Der Useragent beinhaltet das Win64, als Resultat wird mir aber dennoch nur der 32bit String angezeigt. Ich gehe davon aus, dass ich einen Fehler in meinem RegEx Pattern habe, stelle mich aber wahrscheinlich zu doof an, den zu finden.
Ich habe das Pattern auch schon auf https://regex101.com/r/SqcZrP/1 getestet und dort funktioniert der Full Match.
Habt ihr eventuell noch eine Idee?
Vielen Dank im Voraus
ich stehe gerade vor einem etwas kleinerem Problem, welches mir keine Ruhe lässt. Ich habe mir eine kleine Funktion zusammen gebastelt, welche RegEx Patterns enthält und diese dann gegen den ermittelten Useragent prüft. Die normale Prüfung funktioniert einwandfrei, allerdings möchte ich auch gerne die Architektur (32bit oder 64bit) einbeziehen und genau da stehe ich etwas im Wald und finde meinen Fehler nicht.
Funktion:
PHP:
function site_statistic_get_os($useragent){
$osArray = array(
'<img src="images/os_icons/windows_icon.png">Windows 10 (x86)' => '/Windows\sNT\s10.0/',
'<img src="images/os_icons/windows_icon.png">Windows 10 (x64)' => '/Windows\sNT\s10.0;\s(Win64|WOW64)/'
);
foreach ($osArray as $os => $regex){
$matches = array();
if (preg_match($regex, $useragent, $matches)) {
return $os;
} else {
return '<img src="images/browser_icons/nobrowser_icon.png"> No O/S Information ';
}
}
}
Useragent:
Code:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36
Der Useragent beinhaltet das Win64, als Resultat wird mir aber dennoch nur der 32bit String angezeigt. Ich gehe davon aus, dass ich einen Fehler in meinem RegEx Pattern habe, stelle mich aber wahrscheinlich zu doof an, den zu finden.
Ich habe das Pattern auch schon auf https://regex101.com/r/SqcZrP/1 getestet und dort funktioniert der Full Match.
Habt ihr eventuell noch eine Idee?
Vielen Dank im Voraus