2011-04-27 11 views
0

私は関数を持っています。私はその関数を別の関数の中で呼び出そうとしています。私は多くのPHPを行っていないので、私の質問を明確にしてください。php関数が別の関数の中にあります

public function user($user) 
{ 
if($user==''){ 
$this->logerror('not valid'); //this stores error in the db 
return false; 
} 
} 

私はちょうどこのような主な機能を実行すると、私は一つのメイン関数の中で上記の関数を呼び出すようにしたい、私はちょうどこのよう

public function main($username, $email) { 
$this -> user($username); 
//more code here to do something only if the user name is not empty 
} 

をすれば、それは有効ではありません」というエラーを格納し"しかし、機能は続行します。私は何も返さないので、それは両方のことを行うので、有効なユーザー名でない場合に関数を停止する方法を理解しています。

しかし、私はちょうど "ユーザー"関数の内容をコピーすると、falseを返すので、うまく動作します。私はメインの中で関数のユーザを呼ぶことは同じことをすると仮定しました。

をお伝えください。

よろしく

答えて

2

ただ、戻り値をキャッチし、それを

$result = $this->user($username); 
if ($result === false) { 
    return false; // or something else 
} else { 
    // Do something, if user() does not return 'false' 
} 
+1

'ユーザに何かを()'メソッドは、一貫性のため – Phil

+1

良い点のために、有効な場合は 'true'をを返すように変更する必要があります。しかし、私は 'main()'で 'if($ user!== ''){/ *何かする* /} else {$ this-> logerror '有効ではありません'); } '。 – KingCrunch

+0

@kingcrunch、すばやい返信をいただきありがとうございます、私はあなたが言ったことを疲れて、それはうまく動作します。私はそれを変数に代入することでやりましたが、別の関数 "user"で条件チェックをする目的は何ですか?また、($ result ==== false)falseだけを正しく返すことができますか?他に何ができますか?私は何かをエコーできますか?私が投稿した時点で申し訳ありませんがコメントがあります。それらを読むでしょう。 – geej

関連する問題