webForumDet fria alternativet

Långsam funktion

6 svar · 330 visningar · startad av nkrantz

nkrantzMedlem sedan apr. 2002830 inlägg
#1

Lågsamma laddningstider då det är mycket text.

Hej, använder följande funktioner för att fixa till min text lite:

function dbTxtFix($text)
{
	$text = preg_replace( "'\[NOBR\](.*?)\[/NOBR\]'se",'$this->br2nl("\\1")',$text);
	$text = $this->txtToLinks($text);
	
	return $text;
}

function br2nl($text)
{
	
	$text = str_replace("<br />", "", $text);
	$text = str_replace("<br/>", "", $text);
	$text = str_replace("<br>", "", $text);
	
	return $text;
}
	
function txtToLinks($text)
{
	$text = preg_replace("/([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})/i", "<a href=\"mailto:$0\">$0</a>",$text);

	return $text;
}

Detta anropas via:

$text = $myArticle->dbTxtFix(nl2br($art[0]['article']));

Nu är det så att funktionen dbTxtFix tar ORIMLIGT lång tid, genereringstider på 5-6 sekunder funkar liksom inte.

Något som ni ser som kan förbättras?

// Nippe

nkrantzMedlem sedan apr. 2002830 inlägg
#2

Inte någon som känner att ni kan bidra med något för att få detta snabbare?

// Nippe

nicclasMedlem sedan feb. 20001 050 inlägg
#3

Jag antar att det inte är txtToLinks som tar lång tid, eller?

aasahMedlem sedan mars 20034 471 inlägg
#4

nkrantz skrev:

Nu är det så att funktionen dbTxtFix tar ORIMLIGT lång tid, genereringstider på 5-6 sekunder funkar liksom inte.

Du har alltså kollat att dessa 5-6 sekunder beror på dbTextFix? Det kan inte vara databasuppkoppling(ar) och -anrop(en) som förbrukar merparten av tiden? :q

nkrantzMedlem sedan apr. 2002830 inlägg
#5

nicclas: Nope, den verkar vara smidig!

aasah: Jo precis, har lagt in timer när funktionen går igång och sen avslutar jag timerna när funktionen har körts. Men eftersom dbTxtFix anropar br2nl så testade jag även att lägga in timer i br2nl, och det visade sig att det var dbTxtFix som tog tid.

Det är ganska mycket text som ligger inom [NOBR]-taggarna, men jag hade hoppats att det skulle gå snabbare!

// N

nkrantzMedlem sedan apr. 2002830 inlägg
#6

Fel av mig, nicclas du har rätt, det verkar vara min txtToLinks som tar ca 10 sekunder från servern..

Förslag på hur jag löser detta?

// nippe

nkrantzMedlem sedan apr. 2002830 inlägg
#7

Löste det med Mungo's script: http://www.webforum.nu/showthread.php?s=&threadid=63579&forumid=151

136 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)