That's because you're trying to instantiate a class called A1, but your class is called A only. e.g. this works:
<?
class A{
function A1() {
print "works";
}
}
class B{
var $a; // var $a=new A1; doesn't work
function B() {
$this->a=new A(); // is it correct??
}
function foo() {
$this->a->A1(); //????? it doesn't work
}
}
$b = new B();
$b->foo();
?>
Diego