Hoi,
Ik heb een link 'www.url.nl' . nu komt dit in een textfile te staan die
wordt ingelezen door een php file
en nu moet'www.url.nl' een link worden
wie kan mij vertelle hoe ik dat moet doen?
alvast bedankt
Henk
Likes: 0
Hoi,
Ik heb een link 'www.url.nl' . nu komt dit in een textfile te staan die
wordt ingelezen door een php file
en nu moet'www.url.nl' een link worden
wie kan mij vertelle hoe ik dat moet doen?
alvast bedankt
Henk
On Wed, 06 Feb 2008 20:54:36 +0100, Henk Van Hellum
<henkvanhellum@henkvanhellum.nl> wrote:
> Hoi,
>
> Ik heb een link 'www.url.nl' . nu komt dit in een textfile te staan die
> wordt ingelezen door een php file
> en nu moet'www.url.nl' een link worden
> wie kan mij vertelle hoe ik dat moet doen?
Een regular expression die probeert chocola te maken van wat hij vind. Een
vrij standaard principe is:
<?php
$string = '';//geef de inhoud van dat text bestand in de string
$string =
preg_replace('%(?(?:http|ftp|file)s?://)|www\.)([^\s]+)?%si','<a
href="$1$2">$%1$2</a>',$string);
?>
Pseudo code trouwens, ik heb de regex niet getest, en het is vrij laat :P.
Bekijk de code van de meer gebruikt open source PHP forum code zoals PHPBB
eens om te kijken hoe deze proberen om links te vinden. Je moet daarmee
wel begrijpen dat regexen alleen geen URL kunnen valideren/begrijpen. In
een string is er niet veel direct verschil tusssen 'n.n.b.' en
'voorbeeld.nl'. Daarom is deze regex gebaseerd op het gegeven dat iets
begint met ofwel 'http://', 'https://','ftp://','ftps://', 'file://' of
'files://' (welke ongeldig is, maar puur voor het gemak), of met 'www.',
en daarna alles tot de eerste whitespace (enter, spatie, tab, etc.). Dat
is zoals de meeste code dit aanpakt.
--
Rik Wasmus