Я пытаюсь взять две строки кода из оператора 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 Пойманная фатальная ошибка: аргумент 1, передаваемый BestHandIdentifier :: kickerCards (), должен быть массивом, заданным целым числом, вызываемым в /home/dev/parameter2/BestHandIdentifier.php в строке 36 и определенным в / home / dev / parameter2 /BestHandIdentifier.php в строке 55
У меня возникли проблемы с пониманием того, как создать ($ faceValue, $ CardsGroupedByValues) и передать массив для оценки моей новой функции. Разве я зашел слишком далеко в неправильном направлении?