我正在尝试检索数据,如视图和标记名称(不呈现视图例:app/Mail
目录中每个可邮寄类的emails.user.welcome
。
无功转储UserWelcome
可邮寄类:
Route::get('rendermail', function() {
$email = ( new AppMailUserWelcome() );
return dd($email);
});
无功转储输出
UserWelcome {#441 ▼
+locale: null
+from: []
+to: []
+cc: []
+bcc: []
+replyTo: []
+subject: null
#markdown: null
#html: null
+view: null
+textView: null
+viewData: []
+attachments: []
+rawAttachments: []
+callbacks: []
+connection: null
+queue: null
+chainConnection: null
+chainQueue: null
+delay: null
+chained: []
routes/web.php
$return = [];
$files = scandir("./Mail");
foreach ($files as $key => $value) {
$fullFileName = explode(".", $value);
if ($fullFileName[1] === "php") {
$fileName = $fullFileName[0];
$className = "AppMail". $fileName ."()";
array_push($return, (new $className)->returnArray());
}
}
return $return;
在所有MailableClasses 中添加returnArray方法
<?php
namespace AppMail;
use IlluminateBusQueueable;
use IlluminateMailMailable;
use IlluminateQueueSerializesModels;
use IlluminateContractsQueueShouldQueue;
class testMail extends Mailable
{
use Queueable, SerializesModels;
/**
* Create a new message instance.
*
* @return void
*/
public function __construct()
{
$this->form = "Test";
$this->view = "home";
$this->subject = "home";
}
/**
* Build the message.
*
* @return $this
*/
public function build()
{
return $this;
}
/**
* Build the message.
*
* @return $this
*/
public function returnArray()
{
return [$this->view];
}
}