Simone: Php Array Permutation nach festen Muster

Beitrag lesen

Hallo,

Komme nicht so richtig weiter... Vielleicht könnt Ihr mal rüber schauen ;o)

Zum Problem: ich habe einen Array mit variabler Größe wo einzelne Worte in bestimmten Kombinationen ein festgelegtes Ausgangswort ergeben sollen.

Ausgangswort: hotelfachfrau

Array

hotel
hotelfach
hotelfachfrau
hot
   elf
     fach
     fachfrau
      ach
         frau
          rau 

Übereinstimmungen : a.) hotelfachfrau, b.) hotel|fach|frau c.) hotelfach|frau

Und jetzt mein Quelltext:

<?php
/*
Ausgangswort:
hotelfachfrau

Array 

hotel
hotelfach
hotelfachfrau
hot
   elf
     fach
     fachfrau
      ach
         frau
          rau
		  
*/


$json ='{"0":["hotel","hotelfach","hotelfachfrau","hot"],"2":["tel"],"3":["elf"],"5":["fach","fachfrau","fac"],"6":["ach"],"7":["chf"],"9":["frau","fra"],"10":["rau"]}';
$json_array = json_decode($json,true);
/*
Array
(
    [0] => Array
        (
            [0] => hotel
            [1] => hotelfach
            [2] => hotelfachfrau
            [3] => hot
        )

    [2] => Array
        (
            [0] => tel
        )

    [3] => Array
        (
            [0] => elf
        )

    [5] => Array
        (
            [0] => fach
            [1] => fachfrau
            [2] => fac
        )

    [6] => Array
        (
            [0] => ach
        )

    [7] => Array
        (
            [0] => chf
        )

    [9] => Array
        (
            [0] => frau
            [1] => fra
        )

    [10] => Array
        (
            [0] => rau
        )

)
*/

echo "<pre>";
echo "<h3>Ausgangswort : hotelfachfrau</h3>";
print_r($json_array);
echo "<br>";
echo "Übereinstimmungen  : a.) hotelfachfrau, b.) hotel|fach|frau c.) hotelfach|frau <br>";


$ausgangswort = 'hotelfachfrau';
$strlen_ausgangswort  = mb_strlen($ausgangswort);


		foreach($json_array[0] as $key => $teil_str)
			{
				$strlen_teil_str  = mb_strlen($teil_str);
				
				if(!empty($json_array[$strlen_teil_str]))
					{
						
						echo '<b>'.$teil_str.'</b><br>';	
						foreach($json_array[$strlen_teil_str] as $wort_teilstring)
							{
								echo $teil_str.'|'.$wort_teilstring.'<br>';
							}
					}
			}

echo "</pre>";
?>

Es fehlt die Permutation (Funktion) in der zweiten Schleife...

Danke!