mehrdimensionales Array durchsuchen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • mehrdimensionales Array durchsuchen

    Hallo,

    habe folgende zwei Arrays:

    Code:
    $bbcodes = array( '[b]', '[u]', '[i]'); // b, u, i  [/i][/u][/b][u][i][/i][/u][i][/i]
    $Explanations = array ( array (	'tag' => '[b]', 
    			'description' => 'Mit dem Tag [b] können Texte fett markiert werden. 
    Dazu werden ein einleitendes [b] und ein schließendes [/b] benötigt.', 
    			'example' => 'Das ist das Haus vom [b]Nikolaus[/b]'),
    						
    			array ( 'tag' => '[u]',
    				'description' => 'Mit dem Tag [u] können Texte unterstrichen werden. 
    Dazu werden ein einleitendes [u] und ein schließendes [/u] benötigt.',
    				'example' => 'Das ist das Haus vom [u]Nikolaus[/u].'),
    						
    			array (	'tag' => '[i]', 
    				'description' => 'Mit dem Tag [i] können Texte kursiv markiert werden. 
    Dazu werden ein einleitendes [i] und ein schließendes [/i] benötigt.', 
    				'example' => 'Das ist das Haus vom [i]Nikolaus[/i].'));
    EDIT:
    Die Forensoftware mag wohl keine BB-Codes in code- und php-Tag..... Die Werte im Array $bbcodes heißen '[ b ]', [ u ]' und '[ i ]'


    Ich möchte jetzt die Erklärungen für jedes BB-Code ausgeben lassen.

    Wie kann ich das entsprechende Array in $Explanations zum zugehörigen Wert in $bbcodes suchen?

    Bisher habe ich das über den Schlüssel gelöst und zwar so:

    PHP-Code:
    // Die Erklärungen der BB Codes einzeln
    foreach($bbcodes as $key => $bb)
    {
        echo 
    '<h2 id="'.$bb.'">'.$bb.'</h2>';
        
        if(!empty(
    $Explanations[$key])) // <-- der Zugriff über $key ist mir aber zu ungenau
        
    {
            echo 
    '<p>'.$Explanations[$key]['description'].'</p>';
            
            echo 
    '<p><b>Beispiel:</b></p>';
            echo 
    '<p class="bbexample">'.$Explanations[$key]['example'].'</p>';
                
            echo 
    '<p>wird zu</p>';
            echo 
    '<p class="bbexample">'.changetext($Explanations[$key]['example']).'</p>';
        }
        else
        {
            echo 
    '<p>Bisher leider keine Erkl&auml;rung vorhanden. Wenden Sie sich ggf. an den Webmaster.</p>';
        }

    Da ich aber wesentlich mehr BB-Codes habe, als oben angeführt, möchte ich nicht unbedingt die Reihenfolge beibehalten müssen bzw. es könnte mal zu Vertauschungen kommen. Wie kann ich die Erklärung für jedes BB Code also ausgeben lassen?
    Zuletzt geändert von Boron; 04.04.2007, 12:00.

  • #2
    Die Explanation-Unter-Arrays gleich im Explanation-Array mit dem Tag als key speichern?
    Dann reicht ein print_r($Explanations['[b]'])

    Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

    bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
    Wie man Fragen richtig stellt

    Kommentar


    • #3
      Achso natürlich. Vielen Dank.

      Aber angeommen, das wäre nicht möglich?
      Zuletzt geändert von Boron; 04.04.2007, 14:00.

      Kommentar


      • #4
        Original geschrieben von Boron
        Aber angeommen, das wäre nicht möglich?
        Dann müsstest du dir wohl selber eine vollkommen unperformante Funktion dazu schreiben~

        Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

        bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
        Wie man Fragen richtig stellt

        Kommentar

        Lädt...
        X