Need some help

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()?

That may be due to where you have placed the return statement, and how the data is being treated.

You haven’t yet stated what you are expecting to be returned from the function. A string of some kind, or an array of them?