Não consigo fazer a função current exibir os valores em tela, porém consigo fazer o uso dela pra adicionar na minha SplDoublyLinkedList.
class TocadorDeMusica
{
private $musicas;
public function __construct()
{
$this->musicas = new \SplDoublyLinkedList();
$this->musicas->rewind();
}
public function adicionarMusicas(\SplFixedArray $musicas)
{
for($musicas->rewind(); $musicas->valid(); $musicas->next()){
$this->musicas->push($musicas->current());
}
}
public function adicionaMusica($musica)
{
$this->musicas->push($musica);
}
public function adicionaMusicaNoInicioDaLista($musica)
{
$this->musicas->unshift($musica);
}
public function removerMusicaDoInicio()
{
$this->musicas->shift();
}
public function removerMusicadoFinalDaLista()
{
$this->musicas->pop();
}
public function mostrarNomes()
{
for($this->musicas->rewind(); $this->musicas->valid(); $this->musicas->next()){
echo "Era pra ser aqui o nome<br/>";
$this->musicas->current()."<br/>";
}
}
public function tocarMusica()
{
if($this->musicas->count() === 0){
echo "Nenhuma música foi encontrada no tocador.<br/>";
}else{
echo "Tocando a música: ".$this->musicas->current()."<br/>";
}
}
public function totalDeMusicas()
{
echo $this->musicas->count()."<br/>";
}
}