【发布时间】:2011-02-22 01:54:19
【问题描述】:
我正在尝试从 elseif 语句中获取两行代码,并创建一个将参数返回给父函数的函数。这是一个简单的纸牌游戏,可以在我的 $Cards 数组中搜索三张。这是原始代码:
elseif(count($Cards) == 3) {
$CardsNotOfValue = $this->_getCardsNotOfFaceValue($faceValue, $CardsGroupedByValues);
list($Kicker1, $Kicker2) = $this->_getSortedCards($CardsNotOfValue);
return new ThreeOfAKind(array_merge($Cards, array($Kicker1, $Kicker2)));
}
到目前为止,我的代码如下所示:
function { if (count($Cards) == 3) {
**LINE 36** $Kicker = $this->kickerCards($faceValue, $CardsGroupedByValues); }
**LINE 55** public function kickerCards(array $kickers)
{
$CardsNotOfValue = $this->_getCardsNotOfFaceValue($faceValue, $CardsGroupedByValues);
return $this->_getSortedCards($CardsNotOfValue);
}
当我尝试执行四种类型时,我收到以下错误(我试图突出显示上面有问题的行):
PHP 可捕获的致命错误:传递给 BestHandIdentifier::kickerCards() 的参数 1 必须是一个数组,给定整数,在第 36 行的 /home/dev/parameter2/BestHandIdentifier.php 中调用并在 /home/dev/parameter2 中定义/BestHandIdentifier.php 第 55 行
我在理解如何创建 ($faceValue, $CardsGroupedByValues) 并传递一个数组以供我的新函数进行评估时遇到了一些麻烦。一开始我是不是走错了方向?
【问题讨论】:
-
var $faceValue 中有什么?
标签: php arrays function parameters