Beste mensen,

Ik heb voor de grap dit systeem bedahct:


index.php:
<?php

class testcls
{
var $html = NULL;
var $files = NULL;

public function replacements()
{
$this->html = file_get_contents('test.php');

$this->html = str_replace('<!-- IF a == b -->','<?php if(a == b){ ?>',$this->html);
$this->html = str_replace('<!-- ELSE -->','<?php }else{ ?>',$this->html);
$this->html = str_replace('<!-- ENDIF -->','<?php } ?>',$this->html);

echo $this->html;
}
}

$test = new testcls;
$test->replacements();

?>

test.php:
<!-- IF a == b --> a is gelijk aan b <!-- ELSE --> a is niet gelijk aan b <!-- ENDIF -->

Zoals je misschien merkt werkt dit niet.

De statements in test.php worden wel vervangen maar om die weer te laten werken zou het bestand test.php weer opnieuw gelezen moeten worden.

Ik hoop dat iemand weet hoe dat moet.

Groeten,


Daniël
Je kunt iets meerderen malen uitvoeren dmv een for loop:

<?php

	for($i = 0; $i <= 1; $i++)
	{
	
		echo $i; 
	
	}

?>


Echter betwijfel ik wel of dit de oplossing voor jou probleem is.
Ik vind het maar een raar probleem, waarvoor zou je dit überhaupt nodig willen hebben?
Overigens zitten we al in php5 dus var is min of meer uit de mode. gebruik dan gewoon public / protected / private voor zoals je dat wel doet met je methode. Verder 'mag' je methodes niet iets laten echooen je moet ze juist iets laten retourneren.

Over definieer $files, maar die wordt nergens gebruikt? En als laatste mis ik [google]PHPdoc[/google]

Ik snap het niet.

Probeer je de php file die je aan het uitvoeren bent te overschrijven of zo?
Ja ik weet dat var niet meer word gebruikt maar ik had niet zoveel zin om er moeite voor te doen iets anders voor te bedenken.
Ook $files heb ik niet gebruikt. (heb ik wel maar heb ik later verwijderd en heb var $files = NULL; laten staan.
Maar buiten dat, mijn reden is dat ik dit wil gebruiken in combinatie met html template. Dus ik wil mijn php en html gescheiden hebben en niet alles door elkaar.

Reageren