---
title: "formatera sträng"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/44578-formatera-sträng"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "sibben11"
published: "2002-05-26T14:48:33.000Z"
updated: "2002-05-27T11:20:51.000Z"
replies: 4
views: 344
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/44578-formatera-sträng"
---

# formatera sträng

## #1 — sibben11, 2002-05-26T14:48Z

Har en variabel som är tagen ur ett databas fält med hjälp av en whilesats.

säg att det är:  "$text="hejsan här är en webadress, <https://www.php.net> "

Nu vill jag ha en ny sträng där den börjar på www och slutar vid nästa mellanrum.

Med andra ord tar ut en webadress ur en databascell...

Har använt:

$sok=$text;
$link=strstr($sok,"www");

Men då kan man bara speca början av strängen.

Vad ska jag använda för att speca även slutet av strängen (mao. ett mellanrum)??
Vilket kommando ska jag använda?

Tackar på förhand!

Permalänk: https://www.webforum.nu/p/44578

## #2 — ThACRoW, 2002-05-26T17:03Z

Så här kanske ?

$sok=$text; 
$temp=explode(" ",strstr($sok,"www"));
$link=$temp\[0\];

Permalänk: https://www.webforum.nu/p/682321

## #3 — sibben11, 2002-05-27T06:47Z

Ville sig inte...

Det gick bra att få fram detta ur ett textfält med endast en länk.

Men om man har flera länkar i dokumentet så visas bara den första.

Här e koden:

$text = "a sbaiddi difkdi <https://www.php.se> <https://www.ifk.se>
 piece6";
 $temp=explode(" ",strstr($text,"www"));
 $link=$temp\[0\];
$link2=$temp\[1\];
echo $link;
echo $link2;

Men jag vill inte sitta och göra varibler för varje gång den hittar en www-länk i dokumentet. 

Hur gör jag detta ?
Även om det finns hundra  länkar i $text-varibeln....

För sen hade jag tänkt mig nåt med:

$länken="\<a href=\\"http://$link\\"\> $link \</a\>";
echo $länken;

Permalänk: https://www.webforum.nu/p/682531

## #4 — nkrantz, 2002-05-27T08:11Z

testa detta.. den tar texten och formaterar dels till vanliga länkar och dels till mail länkar:

```php
function fixDbText($text)
{
	$text = preg_replace("/((http(s?):\/\/)|(www\.))([\w\.\\:\\?\\=\\&\-_\/]+)/i","<a href=\"http$3://$4$5\" target=\"_blank\"><u>$2$4$5</u></a>",$text); 
	$text = preg_replace("/([\w\.\-_]+)(@)([\w\.\-_]+)/i", "<a href=\"mailto:$0\"><u>$0</u></a>",$text); 
	$text = str_replace("\r\n","<br>",$text);
	
	return $text;
}
```

 

borde funka...

//Nippe

Permalänk: https://www.webforum.nu/p/682556

## #5 — psykolog, 2002-05-27T11:20Z

Fler fält

Omj du ändå har en databas, varför inte skapa en tabell med bara URL:s där varje post är kopplad till den som skrev den, blir mer flexibelt och du slipper låta PHP arbeta mer än nödvändigt.

Permalänk: https://www.webforum.nu/p/682636

---

Tråden på webben: https://www.webforum.nu/amne/php/44578-formatera-sträng
