うちのカレーにはこれが入ってる!って食材ありますか?

現在FTPにアクセスしてファイル操作をするプログラムを作っています。
その中でフォルダ(ディレクトリ)の一覧(名前)とファイルの一覧(名前)を別々に出したいのですが何か方法ありますでしょうか?

ftp_nlistで一覧を出せることはわかったのですが、どうやってフォルダなのかファイルなのかを切り分けていけばいいのかがわかりません。
ファイル名には拡張子がついていない場合もあるので「.xxx」というのが名前の最後にあるものがファイルという分け方もできません。

よろしくお願いいたします。

A 回答 (4件)

参考URLに is_ftp_dir というサンプルプログラムがありますが、


これを使って(あるいは同様な方法で)ディレクトリであるかどうか判別できると思います。
逆に言えば、このようなサンプルを載せるということは、直接的な関数が無いことの表れであると思います。

参考URL:http://jp2.php.net/manual/ja/function.ftp-nlist. …
    • good
    • 1
この回答へのお礼

ありがとうございます。

リファレンスのサンプルは英語なので食わず嫌いしてましたが、もろに書いてありますね。
今度からはちゃんと見るようにします。

お礼日時:2005/12/14 15:36

パーミッションの部分で判別出来ると思います。



drwxr-xr-x ←ディレクトリ
-rwxr-xr-x ←ファイル
    • good
    • 0
この回答へのお礼

ありがとうございます。
パーミッションの一文字目がdか否かで判定すればできましたね。

お礼日時:2005/12/14 15:33

No1の方への補足を読むと、FTP関数しか使えないということでしょうか?



試したことはないので、どのような動作になるか分からないのですが、
ftp_rawlistという関数は使えないでしょうか。
FTP LIST コマンドを実行すると書いてあるので、使えそうな気がします。
URLをのせておきますが、いろいろ使用例が書いてありました。

全く動きは確認せず回答してしまっているのですが、
期待されている回答でなかったらすみません。

参考URL:http://jp.php.net/manual/ja/function.ftp-rawlist …
    • good
    • 0
この回答へのお礼

ありがとうございます。

ftp_rawlistに直にディレクトリかファイルかということは書いていませんが他の方の回答と合わせることで実現できそうです。
ありがとうございました。

お礼日時:2005/12/14 15:38

この回答への補足

回答ありがとうございます。
この方法は一度関連するフォルダ及びファイルをすべてローカルにコピーしてからそれぞれリンク先の関数で調べるということですよね。
しかし、FTP上で表示したいファイルの数が100以上ありftp以外の方法でのアクセスはできません。
残念ながらこの方法は使えません。
他の方法もしくは、私が勘違いしていてFTP接続のファイルにも使える関数という場合は投稿をお願いいたします。

補足日時:2005/12/10 18:58
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報

このQ&Aを見た人がよく見るQ&A