Toon posts:

[preg_replace] require van file

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hey,

Ik zal eerste korte beschrijving geven van hetgeen in wil...

Het is de bedoeling dat ik via een RTE/textarea mijn content voor een site ga invoeren. Daar wil ik het zo maken dat ik op een gegeven moment kan zeggen [gastenboek] of [contactform]... dus tussen de blokhaken, met als resultaat dat de 'tag' wordt vervangen door de include of require van de file...

Heb nu al meerdere topics en artikelen op internet en got gelezen. Ondermeer over het parsen van ubb codes, maar kom er niet uit...

is er iemand die mij iig op gang kan helpen met 1 voorbeeldtag! (mogelijk met uitleg van wat er gebeurd)...

Alvast bedankt

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 22-01 23:51

NMe

Quia Ego Sic Dico.

Kijk eens naar preg_replace_callback. :)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Verwijderd

Topicstarter
http://nl2.php.net/manual...preg-replace-callback.php

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
// this text was used in 2002
// we want to get this up to date for 2003
$text = "April fools day is 04/01/2002\n";
$text.= "Last christmas was 12/24/2001\n";
// the callback function
function next_year($matches) 
{
  // as usual: $matches[0] is the complete match
  // $matches[1] the match for the first subpattern
  // enclosed in '(...)' and so on
  return $matches[1].($matches[2]+1);
}
echo preg_replace_callback(
           "|(\d{2}/\d{2}/)(\d{4})|",
           "next_year",
           $text);
// result is:
// April fools day is 04/01/2003
// Last christmas was 12/24/2002
?>


Hierboven zomaar voorbeeld van de php.net site. Ik kan hier toch niet uithalen wat er zoveel anders is dan bij preg_replace en ook hoe ik kan bereiken wat ik wil.

  • prototype
  • Registratie: Juni 2001
  • Niet online

prototype

Cheer Bear

Verwijderd schreef op dinsdag 15 augustus 2006 @ 15:34:
http://nl2.php.net/manual...preg-replace-callback.php

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
// this text was used in 2002
// we want to get this up to date for 2003
$text = "April fools day is 04/01/2002\n";
$text.= "Last christmas was 12/24/2001\n";
// the callback function
function next_year($matches) 
{
  // as usual: $matches[0] is the complete match
  // $matches[1] the match for the first subpattern
  // enclosed in '(...)' and so on
  return $matches[1].($matches[2]+1);
}
echo preg_replace_callback(
           "|(\d{2}/\d{2}/)(\d{4})|",
           "next_year",
           $text);
// result is:
// April fools day is 04/01/2003
// Last christmas was 12/24/2002
?>


Hierboven zomaar voorbeeld van de php.net site. Ik kan hier toch niet uithalen wat er zoveel anders is dan bij preg_replace en ook hoe ik kan bereiken wat ik wil.
Dan zou ik maar eens even eerst goed kijken naar de functie namen; preg_replace en preg_replace_callback. Als dat niet een belletje doet rinkelen zou ik maar eens even goed nog een keer de manual erop na slaan. En als dat nog niet helpt, bij deze de spoiler dan, zoals de naam al zegt doet preg_replace_callback een callback wanneer hij een match heeft gevonden. In het voorbeeld doet hij een callback naar next_year, aan jou nu om voor jezelf nagaat waar je in jouw situatie een callback naar wil doen... overigens zou ik niet require doen, aangezien een require een fatal error gooit i.e. op z'n bek gaat wanneer het bestand niet gevonden kan worden itt een include die een warning gooit; je zou dan eventueel willen callbacken naar een abstractie i.e. functie dus die eerst checked of het bestand bestaat en zo ja, dan pas de require uitvoert ipv direct op include te callbacken. Then again, ik zou sowiesow nog eens goed nadenken wat de consequenties zijn van het doorvoeren van zo'n "feature".

[ Voor 5% gewijzigd door prototype op 15-08-2006 15:56 ]


Verwijderd

Topicstarter
Thnx. Snap nu het onderscheid tussen preg_replace en de callback functie...

Je hebt gelijk wat betreft die require met fatal error. Eigenlijk kan dit toch niet misgaan in mijn geval.

Zodra mijn site wordt geopend wordt er een check gedaan op de aanwezigheid/functionering van de database. Verder staan de files allemaal op dezelfde server, dus als index.php niet bereikbaar is, dan zal hij ook nooit bij de andere requires terechtkomen!