littleguga
@littleguga
Не стыдно не знать, а стыдно не интересоваться.

Как избежать прописывания полных путей?

Есть скрипт test.php:
<?php 
file_put_contents("/home/user/www/t.txt","test\r\n"); ?>

В crontab'e:
#* * * * * /usr/bin/php /home/user/www/test.php >> /home/user/www/t.l 2>&1

Всё хорошо, в файл t.txt записывается test.
Если скрипт test.php, заменить на:
<?php
file_put_contents("t.txt","test\r\n"); ?>

То ничего никуда не пишет. Как сделать так, чтобы записывало в файл t.txt без указания абсолютного пути?

Заранее благодарен за ответ!
  • Вопрос задан
  • 426 просмотров
Решения вопроса 3
alexey-m-ukolov
@alexey-m-ukolov Куратор тега PHP
ничего никуда не пишет

Пишет, еще как, просто вы не знаете в какую директорию :)

Абсолютный путь все равно нужен, но его легко получить через __DIR__:
file_put_contents(__DIR__.DIRECTORY_SEPARATOR."t.txt","test\r\n");

Теперь файл будет сохраняться в ту же директорию, где лежит скрипт.
Ответ написан
@AlikDex
<?php
file_put_contents(__DIR__ . "/t.txt","test\r\n"); ?>

Запишет в папку со скриптом.
Ответ написан
Комментировать
littleguga
@littleguga Автор вопроса
Не стыдно не знать, а стыдно не интересоваться.
Странно, что не указали следующие решения:
  • wget
  • curl
  • вот это самое подходящее на мой взгляд:
    * * * * * cd /home/user/www/site.ru && php cron.php >> /dev/null 2>&1


Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы