Fatal error: Call to a member function start() on a non-object in C:\wamp\www\PCI.php on line 63-------------注意看他的中文意思 就是说start方法不是一个对象的方法。 就是说 你哪里没有实例化对象 或者调用该方法的不是一个对象
不能这么直接用吧 $mb->...
mb没初始化 先$mb = new NetCard();
$mb = new MainBoard; $mb->usePCI($nc);结果为:网络连接成功网络断开连接
也可以class Person { function install() { $this->mb=new MainBoard();
就是说 你哪里没有实例化对象 或者调用该方法的不是一个对象
$mb->...
先$mb = new NetCard();
$mb->usePCI($nc);结果为:网络连接成功网络断开连接
{
function install()
{
$this->mb=new MainBoard();
}
}
$p=new Person();
$p->install();
$nc=new NetCard;
$p->mb->usePCI($nc);总之毫无来由的 $mb->usePCI($nc); 是不可以的
class Person
{
function install()
{
global $mb;
$mb=new MainBoard();
}
}
也是可以的,但强烈的外联不符合软件工程的规则
我那种方式在创建Person对象时,有个方法就创建了MainBoard对象$mb
我这样调用为什么不行?
$mb->usePCI($nc);
{
function install()
{
$mb=new MainBoard();
}
}
你是指这个吗?
$mb 是在 install 方法中创建的,方法结束了,也就没有了
并不因为是类而改变了变量的作用域