kojp
V2EX  ›  问与答

面对对象,phper帮忙解惑一下~~~

  •  
  •   kojp · Nov 9, 2011 · 3848 views
    This topic created in 5311 days ago, the information mentioned may be changed or developed.
    我有两个类。
    class A{

    }

    class B{}

    $b=new B();
    $a=new A();
    5 replies    1970-01-01 08:00:00 +08:00
    kojp
        1
    kojp  
    OP
       Nov 9, 2011
    敲太快了。。误回车。。不好意思。。

    class A{
    function xxxA(){
    $xxb=new B{};
    $valuea=$xxb->getval();
    }

    }

    class B{
    function getval(){}
    }

    $b=new B();
    $a=new A();


    这样能实现不?
    kojp
        2
    kojp  
    OP
       Nov 9, 2011
    敲太快了。。误回车。。不好意思。。

    class A{
    function xxxA(){
    $xxb=new B{};
    $valuea=$xxb->getval();
    }

    }

    class B{
    function getval(){}
    }

    $b=new B();
    $a=new A();


    这样能实现不?
    francis
        3
    francis  
       Nov 9, 2011
    当然可以啊。。
    kojp
        4
    kojp  
    OP
       Nov 9, 2011
    哦。。。

    那我试试。。。

    我现在是这样。

    在外面
    $xxb=new B();
    在calss A里面呢。。

    global $xxb;
    $xxb->getval();

    这样行不?(有区别吗)
    francis
        5
    francis  
       Nov 9, 2011
    有。

    原来方法里的B的实例化对象只是局部变量,存在方法内部,因为没有return就没有其他的引用了。所以不能再被访问的到,也有可能会被销毁;

    后面用global调用外部的实例化对象,他就是调用了实例化对象 - -!!!
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2607 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 15:45 · PVG 23:45 · LAX 08:45 · JFK 11:45
    ♥ Do have faith in what you're doing.