<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> aop.php </title>
<meta charset="UTF-8">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
</head>
<body>
<?php
class User
{
private $name;
function set_name( $value )
{
$this->name = $value;
}
function get_name()
{
return $this->name;
}
}
$c1 = new User();
$c1->set_name( "Jack" );
$name = $c1->get_name();
echo( "name = $name<br>" );
?>
<hr>
<?php
class Logged
{
private $obj;
function __call( $method, $args )
{
echo( "$method( ".join( ",", $args )." )<br>" );
return call_user_func_array(array(&$this->obj,$method), $args );
}
function __construct( $obj )
{
$this->obj = $obj;
}
}
$c1 = new Logged( new User() );
$c1->set_name( "Jack" );
$name = $c1->get_name();
echo( "name = $name<br>" );
?>
</body>
</html>
name = Jack
set_name( Jack )
get_name( )
name = Jack