PHP :: Aufgabe #184

3 Lösungen Lösungen öffentlich

Einfacher Namensgenerator

Anfänger - PHP von Exception - 30.05.2018 um 15:23 Uhr
Schreibe ein Programm, welches zwei Textdateien (zb Vorname.txt, Nachname.txt) Zeile für Zeile in ein Array lädt.
Gebe dann eine zufällige Kombination aus Vornamen und Nachnamen aus.

Lösungen:

vote_ok
von Exception (3770 Punkte) - 05.06.2018 um 19:57 Uhr
Quellcode ausblenden PHP-Code
<?php

// #184 php

try 
{
	$files = array('vornamen.txt', 'nachnamen.txt');
	$names = array(); 

	foreach ($files as $file) 
	{
		$handle = fopen($file, 'r');

		if ($handle) 
		{
			$names[$file] = array();

		    while (($line = fgets($handle)) !== false) 
		    {
		    	array_push($names[$file], $line);
		    }
		}
		else
		{
			throw new Exception('Datei "'.$file.'" konnte nicht geöffnet werden.', 1);
		}

	    fclose($handle);
	}

	echo '<h2>Namen aus den Dateien</h2>';
	echo '<pre>';
	print_r($names);
	echo '</pre>';

	echo '<h2>Generierte Namen</h2>';
	echo '<ul>';
	for ($i=0; $i < 10; $i++) 
	{ 
		$temp = '';
		foreach ($names as $name) 
		{
			 $temp .= $name[array_rand($name)].' ';
		}
		echo '<li>'.$temp.'</li>';
	}
	echo '</ul>';
} 
catch (Exception $ex) 
{
	echo $ex->getMessage().'<br />';
}

?>
vote_ok
von syneex (2650 Punkte) - 06.08.2018 um 15:23 Uhr
Quellcode ausblenden PHP-Code
<?php
//Namen in Array laden
$vorname = array();
$vorname = file("C:\\xampp\\htdocs\\vorname.txt");
$nachname = array();
$nachname = file("C:\\xampp\\htdocs\\nachname.txt");

//Random Arraykey heraussuchen
$vrand = array_rand($vorname);
$nrand = array_rand($nachname);

//Ausgabe
echo $vorname[$vrand] . " " . $nachname[$nrand];
?>
vote_ok
von Acta (320 Punkte) - 07.02.2019 um 13:17 Uhr
Quellcode ausblenden PHP-Code
<?php
$vornamen = file('vornamen.txt');
$nachnamen = file('nachnamen.txt');
$randomvornamen = $vornamen[mt_rand(0, count($vornamen) - 1)]; 
$randomnachnamen = $nachnamen[mt_rand(0, count($nachnamen) - 1)]; 
echo "$randomvornamen $randomnachnamen";



?>