-1

ファイル名のクリーンアップに使用される正規表現はpreg_replace('/[^\w\._]+/', '_', $fileName);

その正規表現を使用して、FTPサーバー(正規表現またはいくつかのphpスクリプトを使用して一括名前変更を許可するFTPクライアント)上のディレクトリ内のファイルの名前を変更する方法を探しています。

また、MySQLの列のすべての行の値の名前を変更したいと思いますたとえば、値がhttp://test.com/content/plugins/audio/uploading/uploads/test song - test title 1.mp3ディレクトリパスを削除してベース名を保持する場合は、同じ正規表現を使用して名前を変更します)。

出力はtest_song___test_title_1.mp3FTPとMySQLの両方である必要があります。

残念ながら、SSHにアクセスできません。

前もって感謝します!

4

1 に答える 1

0

解決策はSmartFTPを使用することで、このジョブではその関数「BulkRename」を使用しました。

次に、MySQLの場合、次のクエリを使用しました。

UPDATE [table]
SET [column] = REPLACE([column], '!', '_'),
    [column] = REPLACE([column], '@', '_'),
    [column] = REPLACE([column], '#', '_'),
    /* add as many as you wish(the same ones as you put in smartftp bulk rename function) */
    [column] = REPLACE([column], '\'', '_'),
    [column] = REPLACE([column], '\\', '_')

誰かのお役に立てば幸いです。

于 2012-11-06T13:07:16.603 に答える