これはよくある質問だと思い、自分で解決しようとしましたが、他の回答の指示に従ってもうまくいきません。したがって、これが問題です。ClassTwoのClassOneクラスからメソッドを呼び出す必要があります。だから私はこれをしました:
class ClassOne{
public function methOne($par1,$par2){
mysql_query("insert into ps_loyalty_events (customer_id,event_id) values ('$par1','$par2') ") or die(mysql_error());
}
}
class ClassTwo{
private $customer; //initialize $customer in the constructor, to be defined as an instance of ClassOne() class and used as $this->customer
function __construct() {
$this->customer = new ClassOne();
}
public function methTwo(){
//some stuff here
$this->customer->methOne(6,10); //6,10 - randomly chosen parameters, irrelevant
//some more stuff here, this doesn't get executed at all
}
}
次の方法で通常のPHPファイルから直接呼び出すことが機能するため、priblemはClassOneまたはメソッドmethOne()にはありません。
$customer = new ClassOne();
$customer->methOne(6,10);
ただし、ClassTwoメソッドから呼び出すと、何も実行されません。関数の実行が停止するだけです。try-catchを使用しても、何も出力されないようです。私は何が間違っているのですか?