0

アップロードされた音楽の詳細が保存されているデータベースがあります。

私のデータベースにlocationは音楽が保存されています

テーブルのデータは次のようになります。

TableA

id      musicpath                status

1      /X/Y/Z/abc.mp3             1
2      /X/Y/Z/abc1.mp3            0
3      /X/Y/Z/abc3.p3             1
4      /X/Y/Z/abc5mp3             1

上記の表で、idはauto-increment、でありmusicpath、音楽が保存されている場所です。いずれかの行のステータスが1の場合、cronが実行され、アップロードされた音楽が圧縮され、既存のファイルが置き換えられ、ステータスが0に更新されます。ffmpegがインストールされており、sshを使用して圧縮できますが、PHPを使用して試しましたが、機能しません。だから私は書くことにしましたCRON

cronは圧縮のためにこのコードを実行しますが、誰かがそれを共有できる場合は他の詳細が非常に役立ちます。

exec('ffmpeg -y -i ' . $_FILES['song']['name'] . ' -ab 24000 ' . $_FILES['song']['name'] . '');

私はphpファイルを実行するためにcronを設定する方法を知っています。しかし、cronによって実行されるphpファイルの書き方がわかりません。

4

2 に答える 2

3

PHPスクリプトにシバン行を追加して実行可能にすることができます(chmod +x):

#!/usr/bin/php
<?php
// your code

その後、他のスクリプト/プログラムと同じようにcrontabで使用できます/path/to/whatever.php

于 2012-06-09T13:04:34.607 に答える
0

Web サーバーからもアクセスする必要があるファイルの場合は、単純に php で実行できます。

/usr/bin/php5 /path/to/your/script.php

php5 へのパスは変更される可能性があります。実行することで見つけることができます

whereis php5
于 2012-06-09T13:24:42.743 に答える