我试图创建并调用一个使用多个语句的PHP函数

时间:2014-04-20 05:16:03

标签: php arrays function call

我正在编写一个用于D& D 3.5的NPC生成器,我通过“随机”采样各种PHP数组来获得我想要的结果

print_r(array_rand($a,1));

生成NPC的整个位都是那种风格,数组标记为$ a到$ e。我的代码的结果就像这样(添加了数组标签以进行一些澄清)

($a)Half-Orc ($b)male: ($c)Young, ($d)with a relaxed, peaceful disposition 
($e)and some items that need to be fetched/located.

我的问题是我无法弄清楚如何将这些语句的块放入可以调用的函数中。我尝试过使用

function Generator(){
print_r(array_rand($a,1));
print_r(array_rand($b,1));
print_r(array_rand($c,1));
print_r(array_rand($d,1));
print_r(array_rand($e,1));
}

但是当我尝试使用

调用它时,它无处可去
Generator();

我只是愚蠢,还是有一些我严重失踪的东西?

1 个答案:

答案 0 :(得分:0)

函数/方法由大括号内的语句组成(在本例中为none)你可能要做的是将print_r语句放在函数中;

function Generator(){
    print_r(array_rand($a,1));
    print_r(array_rand($b,1));
    print_r(array_rand($c,1));
    print_r(array_rand($d,1));
    print_r(array_rand($e,1));
}

此外,除非$a - $e是全局变量,否则您需要将它们作为参数传递;

function Generator($a, $b, $c, $d, $e){
    print_r(array_rand($a,1));
    print_r(array_rand($b,1));
    print_r(array_rand($c,1));
    print_r(array_rand($d,1));
    print_r(array_rand($e,1));
}

...并使用它来调用;

Generator($a, $b, $c, $d, $e);