I would attack this in one of 2 ways. I would manually create a cron job that ran every day and looked for a flag in a record to indicate that an email needs to be sent.
If you have a lower volume or emails to send. And there maybe days with none, and you really wanted to kick it off in PHP, I would do an AT job. A cron job is more geared towards a recurring task, where an AT job (@) is more of a one time thing. If you use an AT job, I would kick it off by using the system command.
Between the 2, I would have a cron job run daily and check for an email flag. And I would manually set up the cron job.
Brian