2012-03-05 14 views
1

2つの異なるファイルで2つのクラス間でパラメータを渡す方法を尋ねますか? 例:2つの異なるファイルで2つのクラス間でパラメータが渡される

class a{ 
    function aa(){ 
    $var1 = 10; 
    return $var1; 
    } 
} 
//in different file 
class b{ 
    function bb(){ 
    echo"$var1"; //how this can be achieved? 
    } 
} 
+0

インスタンス化クラス 'A'と – ManseUK

+1

B'クラス内の関数' bb' 'からの関数' aa'を呼び出すには、どのようにこれらのファイルがあります関連する? – deceze

+0

彼らはどう関係しているのですか?あるクラスの変数に別のクラスの変数に直接アクセスするのは良いプログラミング感覚を作りません。 – iWantSimpleLife

答えて

1

どれも右ではない方法で$var代わりの$var1を返す必要があります。それを行うための正しい方法は、クラスBのオブジェクトを作成することである

class a{ 
    function aa(){ 
    $var = 10; 
    $obj_b = new b(); //create an object of the class b 
    $b -> bb($var); //pass the $var value to bb method of class b 
    } 
} 

//in different file 
class b{ 
    function bb($var){ 
    echo $var; //now your values is passed here 
    } 
} 
2

機能bb内には、次の操作を行います。

include('filepath to the file containing class a'); 
$a = new a(); 
echo a->aa(); 

をまたは静的aa機能させることを見て

注:クラスaであなたの変数が$varであり、あなたが$var1

を返します

スターに適した場所PHPでのクラスとオブジェクトについての学習tはここにある - >http://uk.php.net/manual/en/language.oop5.basic.php

0

またはstatic methodで:

class A { 
    public static function aa(){ 
     $var = 10; 
     return $var1; 
    } 
} 

その後、あなたはどこにでも呼び出すことができます。

A::aa() 

を念定義するスクリプトことを確認

1

関数をクラス名で呼び出すことはできますが、両方のクラスをscにロードする必要がありますript。

class b{ 
function bb(){ 
    echo $var1 = a::aa(); 
    } 
} 

あなたはopはに求めているので、パラメータを渡すと、それを呼び出すことはありませ、ここでの回答のaa

1
class a{ 
    function aa(){ 
    $var = 10; 
    return $var1; 
    } 
} 
//in different file 
class b{ 
    $aobj = new a(); 
    $var1 = $aobj ->aa(); 
    echo"$var1"; //this can be achieved 
    } 
} 
関連する問題