hallo,

kan iemand mij helpen met het ophalen van de variablen $naam, $vrouwennamen uit mijn andere functie?
hieronder mijn code.

function vrouwenenmannenNamen() {

    $mannennamen = array(
        'Joshua',
        'Timo',
        'Tim',
        'Selim',
        'Alex',
        'Dylan',
        'Joop',
    );

    $vrouwennamen = array(
        'Anita',
        'Alyssa',
        'Alicia',
        'Linda',
        'Andrea',
        'Angelica',
    );

    $naam = array();
    $naam = array_merge($mannennamen, $vrouwennamen);
    $naam = $naam[mt_rand(0, count($naam) - 1)];  
    return $naam;

}
 function geslacht() {
        if(in_array($naam, $vrouwennamen)) {
        $geslacht = 1;
    }
    else {
        $geslacht = 0;
    }  
    return $geslacht;
    } 
De gedefinieerde $vars en $arrays komen alleen voor in de functie waarin ze aangemaakt zijn.
Dus in function geslacht() bestaan $naam en $vrouwennamen niet.

Zet error_reporting(E_ALL) eens aan.
Zoiets?

<?php
function vrouwenenmannenNamen() {
	$mannennamen = array(
		'Joshua',
		'Timo',
		'Tim',
		'Selim',
		'Alex',
		'Dylan',
		'Joop',
	);
	
	$vrouwennamen = array(
		'Anita',
		'Alyssa',
		'Alicia',
		'Linda',
		'Andrea',
		'Angelica',
	);

	$naam = array();
	$naam = array_merge($mannennamen, $vrouwennamen);
	$naam = $naam[mt_rand(0, count($naam) - 1)];

	$geslacht = 0;
	if(in_array($naam, $vrouwennamen)) {
		$geslacht = 1;
	}
	return $naam . ',' . $geslacht;
}

$result = explode( ",", vrouwenenmannenNamen() );

echo '<p>' . $result[0] . ' is een ' . ( $result[1] == 0 ? 'man.' : 'vrouw.') . '</p>';

?>
<?php
$mannennamen = array(
'Joshua',
'Timo',
'Tim',
'Selim',
'Alex',
'Dylan',
'Joop'
);

$vrouwennamen = array(
'Anita',
'Alyssa',
'Alicia',
'Linda',
'Andrea',
'Angelica'
);

function kiesRandomNaam()
{
global $mannennamen, $vrouwennamen;
$array = array_merge($mannennamen, $vrouwennamen);
return $array[mt_rand(0, count($array) - 1)];
}

function isVrouwelijk($naam)
{
global $vrouwennamen;
return in_array($naam, $vrouwennamen);
}

$naam = kiesRandomNaam();
$geslacht = isVrouwelijk($naam);
echo $naam.' is '.($geslacht ? 'vrouw' : 'man');
?>
Bedankt voor jullie hulp, het werkt :)

Reageren