tld uit url halen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Robin

Robin

04/12/2006 19:04:00
Quote Anchor link
Hallo,

Ik ben op zoek naar een manier om de tld uit een opgegeven url te halen en op te slaan.

nu heb ik al wat geprobeerd met "parse url" maar daar kan ik de tld niet mee naar boven halen.

ook ben ik bezig met het volgende :

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
$string
= 'http://www.google.nl';
$string = str_replace('http://','',$string);
$onderdelen = explode('.',$string);

$var = $onderdelen[0];
$var = $onderdelen[1];
$var = $onderdelen[2];

?>


aangezien elke url anders is werkt bovenstaande niet goed...en het word ook een aardige code om te controleren waar de tld zich bevind.

iemand een idee hoe ik dit het beste voor elkaar kan krijgen ?
 
PHP hulp

PHP hulp

28/01/2021 00:14:19
 
Joren de Wit

Joren de Wit

04/12/2006 19:08:00
Quote Anchor link
Ik denk dat je met $_SERVER['HTTP_HOST'] direct te pakken hebt wat jij wilt...
 
Robin

Robin

04/12/2006 19:21:00
Quote Anchor link
met $_SERVER['HTTP_HOST'] haal ik toch de gehele url op ??

de url heb ik al. ik wil alleen weten wat de tld is, dus .nl .com .eu .net etc

dan is het de bedoeling dat deze word opgeslagen in een variabele, dus stel dat de tld .nl dan moet het zoeits worden $tld=".nl"
 
Joren de Wit

Joren de Wit

04/12/2006 19:33:00
Quote Anchor link
Maar je kunt die waarde toch gewoon exploden? In dit geval zou je het zelfs met strrchr() kunnen doen omdat je alleen alles vanaf de laatste punt (.) wilt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$tld
= strrchr($_SERVER['HTTP_HOST'], '.');
?>
 
Robin

Robin

04/12/2006 19:36:00
Quote Anchor link
1 probleem, stel dat de url als volgt word opgegeven : http://www.voorbeeld.nl/index.php

dan geeft hij dus als resultaat "php"

kan ik ook de gegevens ophalen tussen de enelaatste en de laatste punt ? op die manier zou ik dan kunnen controleren waar de tld zich bevind.

explode is ook lastig aangezien de url dus elke keer anders is en niet standaar op .nl eindigt. hoe kan ik dan checken waar de tld zich bevind ?
Gewijzigd op 01/01/1970 01:00:00 door Robin
 
Jelmer -

Jelmer -

04/12/2006 20:21:00
Quote Anchor link
Kijk ook eens naar parse_url.
 
Robin

Robin

04/12/2006 20:46:00
Quote Anchor link
ja daar heb ik reeds naar gekeken, die haalt echt alles op uit een url behalve de tld.

hij haalt wel een stuk op met een gedeelte van het tld, misschien dat ik dat kan combineren met bovenstaande code
 
- -

- -

04/12/2006 20:49:00
Quote Anchor link
dr was een functie voor, ben vergeten. gewoon met regex doen
 
Legolas

Legolas

04/12/2006 20:52:00
Quote Anchor link
parse_url, dan host exploden, en vervolgens laatste waarde
 
Robin

Robin

04/12/2006 20:59:00
Quote Anchor link
thx voor de reacties...ik kan weer aan het werk ha ha. ik zal het meteen even proberen
 
- -

- -

04/12/2006 21:32:00
Quote Anchor link
tada:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
$string
= 'http://www.google.nl/';
$onderdelen = pathinfo($string);
$var = $onderdelen['extension'];
?>

Edit:
let op: http://www.google.com/google.php levert php op!

nja zo dan maar:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
$string
= 'http://www.google.nl/lol.php';
$onderdelen = pathinfo($string);
$var = $onderdelen['dirname'];
$onderdelen = pathinfo($var);
$var = $onderdelen['extension'];
?>
Gewijzigd op 01/01/1970 01:00:00 door - -
 
Legolas

Legolas

04/12/2006 21:40:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php

$arr
= parse_url($url);
$arr = explode('.', $arr['host']);
$tld = array_pop($arr);

?>
Gewijzigd op 01/01/1970 01:00:00 door Legolas
 
Joren de Wit

Joren de Wit

04/12/2006 21:47:00
Quote Anchor link
@Jonathan: tja dat werkt niet erg lekker he...

@Robin: heb jij mijn oplossing wel geprobeerd. $_SERVER['HTTP_HOST'] bevat namelijk van een url als www.voorbeeld.com/test/index.php alleen het gedeelte 'www.voorbeeld.com'.

ps. @Legolas: nice :-)
Gewijzigd op 01/01/1970 01:00:00 door Joren de Wit
 
Robin

Robin

04/12/2006 22:32:00
Quote Anchor link
blanche,

wat je zegt klopt inderdaad. op zich werkte het prima, maar hij pakt dan de tld van de website zelf en niet van de opgegeven url.

een bezoeker van mijn site geeft dmv een formulier een url door die in een database gezet word en adhv deze url wil ik de tld hebben, iets wat me niet is gelukt met $_SERVER['HTTP_HOST']


ik heb nu onderstaande code, maar om de een of andere reden werkt hij niet goed :

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
$website
= parse_url("http://www.voorbeeld.com");
$host = $website[host];
$parts = explode('.',$host);
$tld = strrchr($parts, '.');

echo $tld;

?>


het ligt hem in het explode gedeelte. als ik onderstaande code naar het scherm probeer te schrijven geeft hij "array" weer ipv "www", "voorbeeld" en "com"

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
$website
= parse_url("http://www.voorbeeld.com");
$host = $website[host];
$parts = explode('.',$host);
echo $parts;
?>


edit : ik had de overige reacties nog niet gezien, dus die ga ik ook even proberen.

edit 2 : de post van legola werkt zo te zien het best en geeft tot op heden altijd het goede resultaat :

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php

$arr
= parse_url("http://www.test.com/index.php");
$arr = explode('.', $arr['host']);
$tld = array_pop($arr);

echo $tld;

?>
Gewijzigd op 01/01/1970 01:00:00 door Robin
 
Joren de Wit

Joren de Wit

04/12/2006 22:37:00
Quote Anchor link
Aha, dan heb ik je vraag verkeerd begrepen. Ik dacht dat het ging om de url waarmee je website aangeroepen was...

Maar kijk dan even naar het voorbeeld van Legolas, dat is dan precies wat je zoekt.
 
Robin

Robin

04/12/2006 22:38:00
Quote Anchor link
blanche toch bedankt want op zich was het wel hetgeen ik uiteindelijk wilde hebben alleen dan met een opgegeven url.

die van legolas werkt inderdaad perfect.

iedereen erg bedankt voor de reacties, echt super
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.