2012-03-16 18 views
2

これは非常に疑問な質問かもしれませんが、どのようにパラメータをPHPクラスのローカル変数として渡すことができますか?パラメータをローカル変数としてメソッドに渡す方法

例えば(これは動作しますが、私が欲しいものを表していません)

public function sql($this->sql_statement){ 
    // do something 
} 

私は渡されたパラメータが「の$ this - > sql_statementは」明らかに変数

になりたい、私はちょうどできましたこれを行うが、より良い方法があるかどうかを知りたい。

public function sql($statement){ 
    $this->sql_statement = $statement; 
    // do something 
} 
+0

オブジェクトプロパティ($ this-> sql_statement)にするには$ sql_statementが必要ですか、そのメソッドのローカル変数にする必要がありますか(これはあなたの質問が示唆しています)? – liquorvicar

+0

@liquorvicar $ sql_statement変数はクラス全体で使用されているため、オブジェクトのプロパティである必要があります。 –

+0

クールで、うまく聞こえます。私はちょうど質問が100%クリアされていないことを確認していた;-) – liquorvicar

答えて

2

私の知る限り、良い方法はない。あなたのメソッドはクラス外から呼び出すことができるため、基本的にはsetterメソッドとして扱う必要があります。つまり、2番目のコードと同様に、渡されたパラメータの値にメンバ変数を設定します。

+0

あなたの応答に感謝します。 !ああ、それが唯一の方法ならば。 –

+0

@BenCarey Au contraire、私はこのコードがきちんとしていると思います。しかし、私はこれがあなたがこれをやろうとしている方法である多くのJavaの背景を持っています。 –

+0

それは非常に快適です、私はそのコードを書くつもりなら、私はいくつかのサポートが必要になります! :-) –

関連する問題