• Das kreative Thema des Monats Oktober wird vor allem diejenigen unter Euch besonders ansprechen, denen Do-it-yourself quasi im Blut liegt. Zeigt uns Eure Improvisationskünste oder fotografiert, was andere Leute sich so im Alltag zusammengestrickt haben. --> Zum Mitmachen bitte hier klicken

PHP Optionen in String

timroh

Cripps Pink
Registriert
08.07.09
Beiträge
148
hi ich suche eine möglichst kurz gehaltene Möglichkeit einen String in dieser Form umzuwandeln:

Code:
Haus am [See|Strand|Ufer|.........] kaufen und gratis dazu [Motorrad|Auto] bekommen
Sie soll jeweils eine der Optionen in eckiger Klammer auswählen und dann das ganze in einen String schreiben:

Code:
Haus am Ufer kaufen und gratis dazu Motorrad bekommen
Das ganze soll mit beliebig vielen Argumenten umgehen können. Natürlich geht es über verschiedene Schlaufen und str_replace's aber ich bin mir sicher, dass es auch eine elegantere Lösung gibt.
Danke
Tim
 
Code:
<?php
$options[1] = array(
	'See',
	'Strand',
	'Ufer',
	'...'
);


$options[2] = array(
    'Motorrad',
    'Auto'
);
?>
<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="utf-8" />
		<!-- Always force latest IE rendering engine (even in intranet) & Chrome Frame
		Remove this if you use the .htaccess -->
		<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
	</head>
	<body>
	    <form method="post">
    		<p>
    			Haus am
    			<select name="wo">
    				<?php 
    				foreach($options[1] as $option)
                    {
                        echo sprintf("<option>%s</option>", $option);   
                    }
                    ?>
    			</select>
    			kaufen und gratis dazu
    			<select name="gratis">
                    <?php 
                    foreach($options[2] as $option)
                    {
                        echo sprintf("<option>%s</option>", $option);   
                    }
                    ?>
                </select>
                bekommen!
    		</p>
    		
    		<input type="submit" value="Speichern!">
    	</form>
    	
    	<?php if(isset($_POST) && !empty($_POST)): ?>
    	<h1>Ausgabe</h1>
        <?php echo sprintf("Haus am %s kaufen und gratis dazu %s bekommen!", $_POST['wo'], $_POST['gratis']); ?>
    	
    	<?php endif; ?>
	</body>
</html>