WebWork Magazin - Webseiten erstellen lassen, Online Medien, html

Webhoster, Webhosting Provider und Domain registrieren

Home | Registrieren | Einloggen | Suchen | Aktuelles | GSL-Webservice | Suleitec Webhosting
Reparatur-Forum | Elektro forum | Ersatzteilshop Haushalt und Elektronik



Im Homepage und Webhosting-Forum --- Array Index auswerten?

Scripte und Programme für PHP, MYSQL. Diskussionen zur Programmierung im Web. Fragen zu CMS, Blogsoftware, Shops, Newsletter und vielen weiteren Scripten.

Forum » PHP & MySQL » Array Index auswerten? - 23 Nov 2024 Antworten
im Forum für Webhosting Homepage gefunden:
Array Index auswerten?
Lumo
Pixelschubser
Threadstarter




Beiträge: 14

Ich habe folgendes:

1: 
2: 
3: 
4: 
5: 
6:
$tmpl_content[title] = 'echo "blabla";
$gaga = 123 + 123;
echo $gaga;';
$tmpl_content[text] = 'echo "Hallo Welt";
$baba = 999 * 999;
echo $baba;';


Jetzt möchte ich das $tmpl_content Array in eine Funktion übergeben.
Dort möchte ich den Index von $tmpl_content zählen.
In dem oberen falle wären das 2 (title & text).

Meine Frage jetzt. Wie lese ich aus wie groß der Index von $tmpl_content ist?

Als nächstes würde ich dann eine Schleife machen die nur maximal so oft läut wie die größe des Indexes ist.

Darin möchte ich per str_replace('','',''); die $title durch $tmpl_content[title] ersetzen. Nur weiß ich leider auch nicht wie ich das anstellen soll ^^.

Wenn mir noch einer erklären könnte wie ich die Index in $tmpl_content nicht nummerisch sondern alphanumerisch ([title]) so wie ich sie definiert habe auslesen kann könnte ich mein Vorhaben in die Tat umsetzen.

  Profil   E-Mail   Editieren   Zitieren
sDiver
Pixelschubser




Beiträge: 13

hi lumo,
denke mal du willst in einem text deine Variablen ersetzen.
habe hierzu eine Funktion der du deinen Text übergibst ($source)
und das Array mit deinen Werten ($vars)

mit dem Code müssen die Stellen im Text mit %%variablenname%% gekennzeichnent
werden. ansonsten einfach die beiden stellen mit %% rausnehmen

sDiver

1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10:
function my_ReplaceVariables( $source, $vars ) {
	if ( trim($source) <> "" ) {
		$work = $source;
		while ( list( $key, $val ) = each( $vars ) ) { 
			$x = "%%" . strtolower($key) . "%%";
			$work = str_replace( $x, $val, $work );
		}
		return $work;
	}
}

  Profil   Editieren   Zitieren
Lumo
Pixelschubser
Threadstarter




Beiträge: 14

Ich möchte Platzhalter in Templates ersetzen.
Habe mir das ungefähr so gedacht:

class_template.php
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14:
', $tmpl);
      //Hier der Teil wo die schleife rein soll
      return $tmpl;
    }
}
?>


In meiner index.php kommen dann beliebig viele Programmteile die als $tmpl_content[irgendwass] deklariert werden.
Bsp:
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11:


Jetzt muss ich nur noch in den Templates die Platzhalter nach dem Name der Programmfunktion einfügen:
1: 
2: 
3: 
4: 
5: 
6: 
7:


{$title}

{$text}


Um die Platzhalter zu ersetzen ist die Schleife notwendig.
Vor der Schleife muss ermittelt werden wie groß der Index ist.
Dann bestimmt die größe des Indexes wie offt die Schleife wiederhohlt werden soll um alle Platzhalter zu ersetzen.

Da der Index den gleichen Name wie die Platzhalter trägt muss lediglich nur noch der name des jeweiligen Indexes ausgelsen werden und als str_replace('indexname', $inhalt vom jeweiligen index, $templ);.

Der Vorteil ist das ich in meiner index.php so viele Programmteile in das Array eintragen kann wie ich will.

Nur weiß ich nicht wie ich die Schleife definiere

  Profil   E-Mail   Editieren   Zitieren
sDiver
Pixelschubser




Beiträge: 13

hi lumo,

die Lösung findest Du in meinem vorherigen Post !

Einfach das Template in einen String einlesen

1: 
2: 
3:
$fp = fopen("/home/irgendwas/gaga.tmpl");
$filestring = fgets($fp, filesize(datei));
fclose($fp);


Dann die Funktion aufrufen

1: 
2: 
3:
$neuerstring = my_ReplaceVariables ( $filestring, $tmpl_content);
echo $gaga;
echo $neuerstring;


Die Funtion rödelt dann das ganze Array durch und ersetzt alle Variablen

musst halt nur im Template
%%title%% angeben oder den Befehl in der Funktion ändern!

sDiver

PS:
oder schau dir mal FastTemplatean


Diese Nachricht wurde geändert von: sDiver
  Profil   Editieren   Zitieren
skc.tiddy
Otto-Normal-Poster




Beiträge: 81

zum einlesen von inhalt am besten: file_get_contents(); verwenden...

ist viel edler...
es sein denn, du hast eine mördermässig riesige datei ;)

---
...blah.

Diese Nachricht wurde geändert von: skc.tiddy
  Profil   Website   Editieren   Zitieren
languitar
Foren-Team




Beiträge: 2795

smarty ist sonst auch sehr bekannt.

  Profil   Editieren   Zitieren
Lumo
Pixelschubser
Threadstarter




Beiträge: 14

Ich danke euch Leute funzt ;)

So sieht es jetzt aus bei mir:
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17:
 "" ) {
        $work = $tmpl;
        while ( list( $key, $val ) = each( $tmpl_content ) ) { 
			    $x = "%%" . strtolower($key) . "%%";
			    $work = str_replace( $x, $val, $work );
          }
		  }
		return $work;
}
?>


Von fertigen Templateklassen hab ich von Anfang an abgesehen, weil die meist zu aufgeplustert sind.

THX nochmal an alle

  Profil   E-Mail   Editieren   Zitieren
languitar
Foren-Team




Beiträge: 2795

Zeilen 5 und 7 kannste dir so sparen.

  Profil   Editieren   Zitieren
Lumo
Pixelschubser
Threadstarter




Beiträge: 14

Aso ja stimmt ja
Wäre mir jetzt garnicht aufgefallen.

  Profil   E-Mail   Editieren   Zitieren
 

Antworten
Forum » PHP & MySQL » Array Index auswerten?

Aktuelle Beiträge zur Hilfe im Forum für Homepage - Array Index auswerten? im Forum Homepage Hosting AntwortenLetztes Posting
Cybersicherheit für Unternehmen
in "PHP & MySQL"
3 18.11.2024 14:05 von Gaswer
Wirtschaftslage in der Ukraine
in "PHP & MySQL"
3 22.10.2024 15:04 von Gaswer
Rangliste (Ohne Mysql) (Kompliziertes Ordner System)
in "PHP & MySQL"
3 19.07.2021 06:00 von newtopblog
kleines problem mit phpadmin
in "PHP & MySQL"
5 11.04.2021 22:22 von Zavylon
Counter mit PHP
in "PHP & MySQL"
4 22.03.2021 16:29 von Robeni
Fehlermeldung beim Importieren der Datenbank in phpmyadmin
in "PHP & MySQL"
0 02.08.2019 22:14 von iFuchs
CMS für Online Shop
in "PHP & MySQL"
18 26.05.2019 13:29 von raiserle
Regestrierungproblem
in "PHP & MySQL"
3 28.11.2018 13:20 von norbertofahey
PHP Datum ausgeben?
in "PHP & MySQL"
1 19.10.2018 10:04 von Klaus1973
PHP befehl ausführen
in "PHP & MySQL"
11 16.08.2018 09:08 von Klaus1973
Visual Composer selber programmieren?
in "PHP & MySQL"
0 22.01.2017 23:45 von Redji



Besucher : 8127826    Heute : 220     Gestern : 761     Online : 192     23.11.2024    9:16      0 Besucher in den letzten 60 Sekunden        
Nach oben