2013-11-25 5 views
1

Я использую задание cron для запуска php-файла, который будет обновлять текстовый файл.Как использовать cron для запуска php-файла?

файл cron.php содержит

<?php 


echo date('l jS \of F Y h:i:s A'); 

$content = "some text here ".date('l jS \of F Y h:i:s A')."\n"; 
$fp = fopen("myText.txt","wb"); 
fwrite($fp,$content); 
fclose($fp); 

Я получаю электронную почту каждые мин содержит дату. потому что здесь все круто. но myText.txt в не меняя

+1

Удостоверьтесь, что у файла есть разрешения на запись – Adam

ответ

2

Пути по файлу относятся к текущей действующей директории. Это не обязательно совпадает с каталогом, в котором находится файл PHP. "myText.txt" может ссылаться на /myText.txt (корневой каталог) при выполнении как задание cron без установленного рабочего набора каталогов, к которому у вашего скрипта нет прав доступа.

полный файл paths"/home/thingsto/.../myText.txt", или __DIR__ . '/myText.txt'.

+0

__ DIR __. '/myText.txt. это заставляет его работать – alnassre

2

Это происходит потому, что PHP выполняется в другой папке, чем ваш myText.txt, когда вы используете хроны.

Либо используйте абсолютный путь для указания пути текстового файла;

или

изменить каталог первой (используйте скрипт для cd в рабочую директорию и запустите файл PHP). Запустите сценарий оболочки вместо файла PHP.

-1

попытаться указать абсолютный путь к файлу «myText.txt». похоже, что сценарий сохраняет данные в неправильном месте.

Смежные вопросы