Php 如何在函数本身中输出函数的参数
我的代码应该给出旋转30次的尾巴和头的数量。这个过程要做4000次。我想使用上述代码将4000次的所有结果存储在一个数组中。但我认为我对flip的定义是错误的。我不知道在完成后如何存储flip参数的值,因此我使用了echo 当我运行此代码时。。出于某种原因,它会像这样打印出所有的答案:而不是仅仅制作一个数组。我已经指出,我采用flip的vfilanl值的方式是错误的。有人能告诉我echo和print之间的区别,以及我如何使用return。当我只使用return()时;在echo之后。它给了我一个错误Php 如何在函数本身中输出函数的参数,php,Php,我的代码应该给出旋转30次的尾巴和头的数量。这个过程要做4000次。我想使用上述代码将4000次的所有结果存储在一个数组中。但我认为我对flip的定义是错误的。我不知道在完成后如何存储flip参数的值,因此我使用了echo 当我运行此代码时。。出于某种原因,它会像这样打印出所有的答案:而不是仅仅制作一个数组。我已经指出,我采用flip的vfilanl值的方式是错误的。有人能告诉我echo和print之间的区别,以及我如何使用return。当我只使用return()时;在echo之后。它给了我一个
请澄清我对如何输出这些值的疑问 您应该使用以下内容:
<?php
$l = 4000;
function flip($h, $t)
{
if ($h + $t <= 29) {
$a = mt_rand(0, 1);
if ($a == 1) {
flip($h + 1, $t);
} else {
flip($h, $t + 1);
}
} else {
echo "$h,$t" . "</br>";
}
}
$ar = array( "test");
for ($i = 0; $i <= $l; $i++) {
array_push($ar, flip(0, 0));
}
?>
请注意,输出到客户端
但是您需要决定调用
flip
时得到的是什么,这是通过使用来完成的。您需要使用而不是echo
/print
。您好,我看到您的代码大致相同。但是现在我用return替换了代码中的echo。忽略数组部分。我试着通过这个“打印翻转(0,0)”来获得翻转的答案。“为什么我没有得到任何答案?”SaiKrishnaDeep如果我使用echo flip(0,0),“
”代码>在循环内部。使用<代码>打印翻转(0,0)。'
代码>也可以工作,但串接字符串的速度较慢。这就是我现在的想法。。仍然不起作用。@SaiKrishnaDeep您必须添加return:return flip($h+1,$t)代码>和返回翻转($h,$t+1)代码>。非常感谢Oriol!请告诉我这一变化背后的原因是什么,return到底是如何做到这一点的?如果解释起来太费劲,你能给我一个链接吗?:)谢谢,赛
<?php
function flip($h, $t)
{
if ($h + $t > 29) return $h . ',' . $t;
$a = mt_rand(0, 1);
return $a == 1 ? flip($h + 1, $t) : flip($h, $t + 1);
}
$ar = array( "test");
$l = 4000;
for ($i = 0; $i <= $l; ++$i) {
array_push($ar, flip(0, 0));
}
?>