Willkommen in der Webstatt Zum Webstatt Blog und Stories
nuit nuit am 12.12.07 03:20

Noja...ich bin heute nacht auf ein interressantes Problem gestossen, es ging darum 2 Urls auf gleichheit zu testen -.- das PRoblem ist übrigens im JEx-Board aufgetreten (ich traue es mich kaum auszusprechen) und ich hab mich mal drangesetzt und ne nette funktion geschrieben....guut es ist eine funktion, sieht nicht schön aus und lässt sich sicher besser machen :D

hier ist sie:
<?php
function checkUrls($url1,$url2) {
$url1 = parse_url(strtolower(!preg_match('/.*?:\/\/.*?/i',$url1) ? 'http://'.$url1 : $url1));
$url2 = parse_url(strtolower(!preg_match('/.*?:\/\/.*?/i',$url2) ? 'http://'.$url2 : $url2));

return array(
'scheme' => ($url1['scheme'] == $url2['scheme']),
'host' => (str_replace('www.','',$url1['host']) == str_replace('www.','',$url2['host'])),
'user' => ($url1['user'] == $url2['user']),
'pass' => ($url1['pass'] == $url2['pass']),
'path' => ($url1['path'] == $url2['path']),
'query' => ($url1['query'] == $url2['query'])
);
}

$url1 = 'http://www.domain.de/site.php?query';
$url2 = 'www.domain.de/site.php';

print_r(checkUrls($url1,$url2));
?>

das ganze ist recht kurz gehalten, die abfragen sind verkürzte wie man sieht (reicht ja eigentlich aus) und er gibt nur true oder false aus...d.h. wenn das scheme übereinstimmt, host, oder was auch immer, dann gibt er true false aus...gross und kleinschreibung wird nicht beachtet...d.h. er schreibt alles ins kleine am anfang :D

achja...das "www" wird in der domain rausgeschmissen und daher nicht beachtet

noja....so sieht das immo aus....ich kann nicht viel erklären, ist mehr ein Codeschnipsel, und dafür gbsch hier kein forum -.- deshalb hau ich es hier schnell mit rein :D

netcup.de Warum gibt es hier Werbung?
Creative Commons Lizenzvertrag
Alle Inhalte des Webstatt-Archivs stehen unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz.

Impressum & Kontakt