クラス内に次のコードがあります
class Mail {
function AddAttachment($path, $name = '', $filetype = 'application/octet-stream') {
if (!@is_file($path)){
echo'<pre>Filepath was not found.</pre>';
}
if (empty($name)) {
echo 'no filename';
}
//store attachment in array
if(!isset($attachments)) {
$attachments = array();
}
$attachments[] = array('path' => $path,'name' => $name,'type' => $filetype);
//echo '<pre>';print_r($attachment);
return $attachments;
}
function SetMail() {
foreach ($this->$attachments as $attachment) {
echo '<pre>';print_r($attachment);
}
}
}
$mail = new Mail;
$mail->AddAttachment('../images/logo.png','filename');
$mail->AddAttachment('../images/logo.png','filensame');
$mail->SetMail();
ご覧のとおり、添付ファイル (addAttachment) 用の配列を最初から作成していますが、これは正常に機能します。次のメソッドではこの配列を使用できないようですが。
$attachments プロパティを公開しようとしましたが、それでも次のエラー メッセージが表示されます。
(パブリックなし): 空のプロパティにアクセスできません
(公開あり): 空のプロパティにアクセスできません
(self::$attachments
代わりに使用する場合$this::$attachments
) :宣言されていない静的プロパティへのアクセス:
$attachments プロパティを SetMail メソッドに渡す方法を説明できる人はいますか?
もうありがとう!