nchristoph
Erfahrenes Mitglied
Hallo zusammen,
folgendes Problem:
Für mein Templatesystem muss ich testen, ob ein returnwert ein Multidimensionaler Array ist und diesen weiter verarbeiten. Normaler Arrays sind kein Problem, bei Mehrdimensionalen steh ich allerdings aufn Schlauch.
So erstelle und befülle ich den Mehrdimensionalen Array
und so verarbeite ich momentan den normalen Array im Templateparser:
Wie kann ich jetzt testen, ob ein return Wert ein Multidimensionaler Array ist? Stimmt der return wie ich ihn gemacht habe überhaupt?
Hab ehrlich gesagt noch nie mit Mehrdimensionalen arrays gearbeitet, nur normalen bis jetzt.
mfg
Christoph
folgendes Problem:
Für mein Templatesystem muss ich testen, ob ein returnwert ein Multidimensionaler Array ist und diesen weiter verarbeiten. Normaler Arrays sind kein Problem, bei Mehrdimensionalen steh ich allerdings aufn Schlauch.
So erstelle und befülle ich den Mehrdimensionalen Array
PHP:
$menulink = array(array());
foreach ($this->pdo->resultset() as $row) {
$menu = $row['name'];
$text = $row['text'];
$id = $row['id'];
if ($row['link'] != "") {
//$link = $row['link'];
//$menulink[] = $row2['menustart'] . '<a href="' . $link . '" >' . $text . '</a>' . $row2['menuend'];
$menulink[][] = $this->tpl->load("menu/menulink");
$menulink[][] = $this->tpl->assign("menu", $menu);
$menulink[][] = $this->tpl->assign("text", $text);
$menulink[][] = $this->tpl->assign("id", $id);
$menulink[][] = $this->tpl->display();
} else {
if ($row1['sefurls'] == "1") {
// $menulink[] = $row2['menustart'] . '<a href="' . $row['name'] . '.htm">' . $row['text'] . '</a>' . $row2['menuend'];
$menulink[][] = $this->tpl->load("menu/menusef");
$menulink[][] = $this->tpl->assign("menu", $menu);
$menulink[][] = $this->tpl->assign("text", $text);
$menulink[][] = $this->tpl->assign("id", $id);
$menulink[][] = $this->tpl->display();
} else {
// $menulink[] = $row2['menustart'] . '<a href="/index.php?p=' . $row['name'] . '">' . $row['text'] . '</a>' . $row2['menuend'];
$menulink[][] = $this->tpl->load("menu/menu");
$menulink[][] = $this->tpl->assign("menu", $menu);
$menulink[][] = $this->tpl->assign("text", $text);
$menulink[][] = $this->tpl->assign("id", $id);
$menulink[][] = $this->tpl->display();
}
}
}
return array(array($menulink));
und so verarbeite ich momentan den normalen Array im Templateparser:
PHP:
public function assign($replace, $replacement) {
if(is_array($replacement)){
foreach($replacement as $repl){
$replacement1 = implode("", $repl);
$this->template = str_replace($this->leftDelimiter . $replace . $this->rightDelimiter, $replacement1, $this->template);
}
}else{
$this->template = str_replace($this->leftDelimiter . $replace . $this->rightDelimiter, $replacement, $this->template);
}
}
Wie kann ich jetzt testen, ob ein return Wert ein Multidimensionaler Array ist? Stimmt der return wie ich ihn gemacht habe überhaupt?
Hab ehrlich gesagt noch nie mit Mehrdimensionalen arrays gearbeitet, nur normalen bis jetzt.
mfg
Christoph
Zuletzt bearbeitet: