$array
будет содержать все слова, разделенные пробелом.
[
"0",
"5",
"*",
"*",
"1",
"tar",
"-zcf",
"var/backups/home.tgz",
"home\n0",
"5",
"*",
"*",
"1",
...
]
Вам нужно разделить строки и l oop через них.
Для второго вопроса; используйте array_slice
, чтобы получить оставшиеся элементы из массива, а затем объедините их с помощью implode
.
$jobs = "
0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
";
$lines = explode("\n", trim($jobs));
foreach ($lines as $line) {
$array = explode(" ", $line);
$job = new Job;
$job->min = $array[0];
$job->hour = $array[1];
$job->day_month = $array[2];
$job->mes = $array[3];
$job->day_week = $array[4];
$job->command = implode(" ", array_slice($array, 5));
$job->save();
}