Übergabe?

Also:
Bei PHP4 kann es funktionieren, aber es kommen Notices dabei rum wenn man das ErrorReporting auf E_ALL hat.

Hier der Code:
PHP:
<?php
error_reporting(E_ALL);
class testclass
{
	var $test;
	function testclass()
	{
		$this->test="teststring";
	}
}

$tc=new testclass();
echo 'PHP '.phpversion().'<br><br>';
echo '1. '.$tc->test.'<br>';
echo '2. '.$tc->$test.'<br>';
?>
Ausgabe PHP4:
PHP 4.4.0

1. teststring

Notice: Undefined variable: test in /usr/local/apache/htdocs/ooptest.php on line 15

Notice: Undefined property: in /usr/local/apache/htdocs/ooptest.php on line 15
2.
Ausgabe PHP5:
PHP 5.0.5

1. teststring

Notice: Undefined variable: test in /usr/local/apache/htdocs/ooptest.php on line 15

Fatal error: Cannot access empty property in /usr/local/apache/htdocs/ooptest.php on line 15

In PHP4 kann man aber auch $this->$test setzen. Das wirft aber auch wieder Notices.

Hier der Code:
PHP:
<?php
error_reporting(E_ALL);
class testclass
{
	var $test;
	function testclass()
	{
		$this->test="teststring";
		$this->$test="teststring";
	}
}

$tc=new testclass();
echo 'PHP '.phpversion().'<br><br>';
echo '1. '.$tc->test.'<br>';
echo '2. '.$tc->$test.'<br>';
?>
Ausgabe PHP4:
Notice: Undefined variable: test in /usr/local/apache/htdocs/ooptest.php on line 9
PHP 4.4.0

1. teststring

Notice: Undefined variable: test in /usr/local/apache/htdocs/ooptest.php on line 16
2. teststring
Ausgabe PHP5:
Notice: Undefined variable: test in /usr/local/apache/htdocs/ooptest.php on line 9

Fatal error: Cannot access empty property in /usr/local/apache/htdocs/ooptest.php on line 9
 
Ok ich glaube ich bin ein bischen Schlauer durch deine Hilfe geworden.
Werde mal alles umschreiben.

Vielen Dank für deine Hilfe.
 
Zurück