after the great advice i received here before i return with another interesting one…
the problem inside my token() method i var_dump() it and get the correct output of tokens i have created.
when i return the the dumped variable and var_dump i only receive a single output witch is not what I’m expecting.
the parser class.
<?php
class Parser
{
private $lexer;
private $handle;
private $lexed;
public function __construct(Lexer $obj)
{
if(is_object($obj))
{
$this->lexer = $obj;
}
}
public function getLexer()
{
return $this->lexer;
}
public function token()
{
while(false === feof($this->getLexer()->gethandle()))
{
$this->lexed = $this->getLexer()->tokenize($this->getlexer()->getToken());
var_dump($this->lexed);
}
}
}
/* var_dump() output:
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' L_C_BRACKET' (length=12)
string ' CHAR' (length=5)
string ' CHAR' (length=5)
string ' CHAR' (length=5)
string ' CHAR' (length=5)
string ' CHAR' (length=5)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ASSERT' (length=7)
string ' SPACE' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' CLOSING' (length=8)
string ' CHAR' (length=5)
string ' CHAR' (length=5)
string ' CHAR' (length=5)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ASSERT' (length=7)
string ' SPACE' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' SPACE' (length=6)
string ' CHAR' (length=5)
string ' SPACE' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' SPACE' (length=6)
string ' CHAR' (length=5)
string ' SPACE' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' SPACE' (length=6)
string ' CHAR' (length=5)
string ' SPACE' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' ALPHA' (length=6)
string ' CLOSING' (length=8)
string ' CHAR' (length=5)
string ' CHAR' (length=5)
string ' CHAR' (length=5)
string ' CHAR' (length=5)
string ' CHAR' (length=5)
string ' R_C_BRACKET' (length=12)
string ' BOOLEAN' (length=8)
null */
/* when i return and var_dump the method i get:
string ' ALPHA' (length=6)
*/
?>
how would i go about fixing this would i have to use list()?