[PHP]Tablice a szablony

0

Witam

Może na początku kod:

$kraje = Array(
      'Europa' => array('Polska', 'Anglia', 'Litwa', 'Francja'),
      'Afryka' => array('Tunezja', 'Egipt', 'RPA', 'Etiopia'),
      'Azja' => array('Chiny', 'Mongolia', 'Japonia', 'Kazachstan')
  );
 
   $szablon->assign('kraj', $kraje);

public function assign($tpl_var, $value = null)
 {
	if (is_array($tpl_var)){
		foreach ($tpl_var as $key => $val){
			if ($key != ''){
				$this -> vars[$key] = $val;
			}
		}
	}else{
		if ($tpl_var != '')
			$this -> vars[$tpl_var] = $value;
	}
 }

foreach ($this->vars as $regexp => $replace) {
		$source = preg_replace("#".$this -> lt."!". $regexp .$this -> rt."#si",$replace,$source);
	}

I teraz otrzymuję błąd na stronie:

[u]Warning: preg_replace(): Parameter mismatch, pattern is a string while replacement is an array in[/u]
Jak wstawić tak bym mógł optymalnie wyświetlać tablice?

0

co to za zlepek jakiejś struktury z definicją funkcji w środku (btw: przekopiowaną funkcją ze smartów) i potem znowu struktura?

0

czegoś tak badziewiastego nie widziałem nigdy xD
Masz buga przy patternie, najprościej loguj sobie po kolei jak robi $source = preg_replace("#".$this -> lt."!". $regexp .$this -> rt."#si",$replace,$source); i zobacz jakie dane które zostały wprowadzone wywołują błędy bo mogłeś użyć "słowa" kluczowego.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.