The following class works fine until I try and print out the last method. I get the following error:
Call to undefined function: display()
any ideas?
class name{
var $name = "Your Name";
var $surname = "Your Surname";
var $_data = array();
var $error;
function value($_data){
foreach ($_data as $varname => $value)
$formVars[$varname] = $value;{
if(empty($formVars['name'])){
$this->error = "no name";
}elseif (!is_string($formVars['name'])){
$this->error = "incorrect format";
}else{
$this->name = $formVars['name'];
}
$this->surname = $formVars['surname'];
}
function getName(){
return $this->name;
}
function getSurname(){
return $this->surname;
}
// Works fine up to here
function display(){
return "My name is " . $this->name . $this->surname;
}
}
}
// call the object and print
$obj = new name();
$_data = array("name"=>"Johnny", "surname"=>"Bravo");
$obj->value($_data);
echo $obj->name . "\n"; // prints fine
echo $obj->surname."\n"; // prints fine
$obj->display(); //Error = call to undefined function