• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:PHPからCronを編集したい)

PHPからCronを編集する方法

このQ&Aのポイント
  • PHP(HTML)のフォーム上から、クーロンの実行日時を設定したいと思っています。
  • PHPでcrontabを編集するにはどのようにすればいいのでしょうか??
  • 開発環境:Mac OS 10.6.8, PHP 5.2.17

質問者が選んだベストアンサー

  • ベストアンサー
  • k_kota
  • ベストアンサー率19% (434/2186)
回答No.2

私もmacは詳しくないですけど、私だったらcronはある程度頻繁に起動させて phpで編集可能な設定ファイルを読み込ませて、その内容に合わせて メインのスクリプトを起動したりしなかったりさせます。 セキュリティ的にもソッチのほうが堅そうですし (最悪でも動作回数が変わるだけ) crontabでファイル指定で読み込ませるのもあったと思いますが、 上記のやり方の方が手間がなくてスムーズだと思います。

takachipo
質問者

お礼

アドバイス通り、 ・cron設定ファイルを用意 ・実行したいコマンドをphpで設定ファイルに書き込む ・shell_exec("crontab 設定ファイルパス")を実行 でできました! 有り難うございました!!

その他の回答 (2)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.3

#1です。 ちなみにcronをGUIでWEB画面上から編集したいというだけであれば webminなどの管理ツールを使う手もあります

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

Macの仕様には疎いので一般的な話で恐縮ですが cronの設定ファイルは/var/cron/tabsに実行ユーザーごとにファイルが用意されます 通常のファイルI/Oで処理すれば書き換えは可能でしょう ただし、設定ファイルの読み書き属性はrootにのみ許可されるものなので sudoなどかませないと編集できないと思います。 cron自体間違った運用をするとシステムに思わぬ過負荷をかけますので phpからの編集ではなく、「crontab -e」など所定の手続きで編集されることをお勧めします。

takachipo
質問者

お礼

アドバイス頂き有り難うございます! ご指摘された方法は少し難しくできなかったので設定ファイルを利用した方法で 実現しました。 #1さんの方法でもいずれ挑戦しようと思います^^