To do that you probably have to configure DKIM/SPF.
DomainKeys Identified Mail (DKIM) is a method for associating a domain
name to an email
To setup DKIM in PHP you could have a look at this Stackoverflow topic
Sender Policy Framework (SPF), as defined in RFC 4408, is an e-mail
validation system designed to prevent e-mail spam by tackling source
address spoofing, a common vulnerability.
This link might help you setup DKIM and SPF.
List
Have a look at this list(more complete?) from Sendgrid:

Sengrid(outsource)
I don't think this is the most simple task. Luckily services like Sendgrid help you sent out emails without them being flagged as spam. They also provide a free plan(200 messages per day).

Also you have to keep in mind that when you sent a lot of emails you should be queuing your emails to sent out emails in a controlled manner(not overloading your server). This is also taking care of by third-party services to sent emails. Also if you are using shared hosting I don't think they will appreciate if you sent a lot emails because your resources are shared with all other users.
Alternatives
Some other alternatives to sendgrid are:
When searching Google you can find a lot more.