Secondo me il problema sta qua
$this->$name();
il $ non c'entra col nome di un metodo.
$this->name();
è corretto.
Secondo me il problema sta qua
$this->$name();
il $ non c'entra col nome di un metodo.
$this->name();
è corretto.
Ho provato come hai suggerito, ma poi non invia la mail.
Ho provato anche cosi:
Però mi restituisce questo errore: Warning: Invalid argument supplied for foreach() in 31 e la riga è questaCodice PHP:
$myarray = array( "nomeFile"=>"documento.pdf", "dirFile"=>"docs/", "emailAddr"=>"[email protected]", "codMod"=>14);
class phpmailerTest extends TestCase{public function foo($key) { global $myarray; foreach((array)$myarray as $k => $v){ if($key==$k){ return $v; } } }
function test_Html() {
$this->Mail->Body .= "E-mail ".$this->foo('emailAddr');
}
}
se invece aggiungo (array) al foreach((array)$myarray as $k => $v){, il warning non lo da più, però quiCodice PHP:
foreach($myarray as $k => $v){
mi restituisce stringa vuotaCodice PHP:
$this->Mail->Body .= "E-mail ".$this->foo('emailAddr');
di sicuro sbaglio qualcosa, ma cosa?
Grazie.
forse e dico forse, non è che quel "extends TestCase" non mi dia la possibilità di ottenere ciò che voglio?
Perché ho provato questo e funziona:
Aiutoooo...Codice PHP:
$myVar = 'value';$myVar2 = 'value2';class myClassA{ public function A(){ global $myVar2; echo $myVar2; }}class myClass extends myClassA{ public function myfunction() { global $myVar; echo $myVar; } function BBB(){ $this->myfunction(); }}
$cls = new myClass();$cls2 = new myClassA();
$cls->BBB();$cls2->A();