login  Naam:   Wachtwoord: 
Registreer je!
 Forum

domeinnaam ontleden (Opgelost)

Offline W0etah - 20/07/2010 15:55 (laatste wijziging 20/07/2010 15:55)
Avatar van W0etahPHP beginner Ik ben bezig met een klein stukje php waardoor ik een domeinnaam makkelijk kan ontleden.

Dus bijvoorbeeld: http://www.sitemasters.be/bleh/blah, daarvan zou ik dus enkel "sitemasters" moeten hebben.

Voorlopig heb ik enkel dit:
  1. $parsedUrl = parse_url($url);
  2. $splitArr = explode(".", $parsedUrl["host"]);
  3.  
  4. var_dump($splitArr);

Dit geeft mij dus terug:
Citaat:
array(3) { [0]=> string(3) "www" [1]=> string(11) "sitemasters" [2]=> string(2) "be" }


Nu, kan ik hierop vertrouwen dat dit altijd zou werken?
Of moet ik toch nog ergens rekening mee houden?

10 antwoorden

Gesponsorde links
Offline Maarten - 20/07/2010 16:52
Avatar van Maarten Erelid 1) Subdomeinen
Je zou dan kunnen zeggen dat je altijd het voorlaatste deeltje neemt
2) Andere TLD's (co.uk enzo)
Dan gaat die vlieger al niet meer op - maar je zou wel kunnen checken op de lengte van het voorlaatste stukje..

Maar mag ik vragen waarom je dat zou doen, je kan domeinen toch beter uniek identificeren met de TLD erbij, er zijn namelijk toch veel websites met dezelfde naam maar verschillende TLD's? Dus in principe zou je dan beter voortgaan op "sitemasters.be" ipv "sitemasters"?
Offline W0etah - 20/07/2010 17:02
Avatar van W0etah PHP beginner Het plan was wel om te controleren op sitemasters.be, maar dan moest ik het nog splitsen omdat men vaak gewoon sitemasters.be intypt in plaats van www.sitemasters.be

Opzich met een subdomein is het nog te doen:
http://bleh.sitemasters.be
Citaat:
array(3) { [0]=> string(4) "bleh" [1]=> string(11) "sitemasters" [2]=> string(2) "be" }
Offline xSc - 20/07/2010 18:53
Avatar van xSc Onbekend Je hebt ook nog mensen die er http:// ervoor typen.
Offline NTS64 - 20/07/2010 19:24
Avatar van NTS64 PHP gevorderde
xSc schreef:
Je hebt ook nog mensen die er http:// ervoor typen.

Dat maakt in het script van W0etah niets uit, hij gebruikt enkel de "host" key van de associatieve array die parse_url returnt. "http" hoort tot de "scheme" key.
Offline W0etah - 20/07/2010 23:47
Avatar van W0etah PHP beginner Heb het nog een beetje aangepast zodat hij nu subdomeinen en "rare" extensies meeneemt.

  1. $parsedUrl = parse_url($url);
  2. $host = $parsedUrl["host"];
  3.  
  4. // url contains www
  5. if(strpos($host, "www") === 0) {
  6. $host = substr($host, 4);
  7. echo $host;
  8. } else {
  9. echo $host;
  10. }
Offline MiST - 21/07/2010 00:58
Avatar van MiST Lid en wat met een loze domeinnaam wwwwwhiiiiii.be? ;)
Offline ArieMedia - 21/07/2010 01:32
Avatar van ArieMedia Gouden medaille

PHP ver gevorderde
  1. <?php
  2. if(preg_match('{www\.([a-zA-Z0-9_\-]+)([\.a-zA-Z]+)}', $sString, $aPatterns)) {
  3.  
  4. }
  5. ?>


hoop dat de regex klopt, maar je zou het dus ook daarmee kunnen doen
Offline Ontani - 21/07/2010 09:45
Avatar van Ontani Gouden medailleGouden medailleGouden medailleGouden medaille

-1
wat met mijn domeinnaam : http://www.wwwdot.be
Offline W0etah - 21/07/2010 10:37
Avatar van W0etah PHP beginner Dan zoek ik gewoon op www., had even niet gedacht aan zo'n domeinnamen 

@ArieMedia, ik ga dat stukje straks even proberen.
Offline ArieMedia - 21/07/2010 12:13
Avatar van ArieMedia Gouden medaille

PHP ver gevorderde
W0etah schreef:
Dan zoek ik gewoon op www., had even niet gedacht aan zo'n domeinnamen 

@ArieMedia, ik ga dat stukje straks even proberen.
Heb hem zelf even getest nu 

Hij werkt ;)

  1. <?php
  2. $sString = 'www.wwwrareurl.co.uk';
  3.  
  4. if(preg_match('{www\.([a-zA-Z0-9_\-]+)([\.a-zA-Z]+)}', $sString, $aPatterns)) {
  5. echo '<pre>'.print_r($aPatterns, 1).'</pre>';
  6. }
  7. ?>


Array
(
[0] => www.wwwrareurl.co.uk
[1] => wwwrareurl
[2] => .co.uk
)
Bedankt door: W0etah
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.21s