我被困在一个php问题上; 以下代码应返回“AB54321”,“UK323032”。目前它只返回“UK32032 UK323032”。我需要找到一种方法,将第二个'$ entry'添加到数组'numbers'。
class Entry
{
public $numbers;
public function __construct()
{
}
public function enter($passportNumber)
{
{
$this->numbers = array();
array_push($this->numbers, $passportNumber);
}
}
public function leave()
{
for ($i = 0; $i<count($this->numbers); $i++)
{
return $this->numbers[$i];
}
}
}
$entry = new Entry();
$entry->enter("AB54321");
$entry->enter("UK32032");
print $entry->leave()."\r\n";
print $entry->leave();
发布于 2018-07-30 16:46:38
解决办法应该是这样:
class Entry
{
public $numbers;
public function __construct()
{
$this->numbers = array();
}
public function enter($passportNumber)
{
array_push($this->numbers, $passportNumber);
}
public function leave($passportNumber)
{
unset($this->numbers[array_search($passportNumber, $this->numbers)]);
return $passportNumber;
}
}
$entry = new Entry();
$entry->enter("AB54321");
$entry->enter("UK32032");
print $entry->leave("AB54321")."\r\n";
print $entry->leave("UK32032");
https://stackoverflow.com/questions/-100001747
复制相似问题