Apache2.0.47、PHP4.3.2で使用しています。
フォルダ内のファイル名の取得を以下のように書いています。
(scandirは使えませんでした)
<?php
$dir = "test_dir";
$dh = opendir($dir);
while (false !== ($filename = readdir($dh))) {
$files[] = $filename;
}
sort($files);
print_r($files);
?>
"."と".."も取得されるので、以下のように変更したのですが同じ結果でした。
<?php
$dir = "test_dir";
$dh = opendir($dir);
while (false !== ($filename = readdir($dh))) {
if(filename!=". "){
if(filename!=".. "){
$file[] = $filename;
}
}
}
sort($files);
print_r($files);
?>
"."と".."をはぶいたファイル名だけを取得したい場合にはどうすればよいのでしょうか?
よろしくお願いします。
No.3ベストアンサー
- 回答日時:
ちゃんと動作してファイル名を取得できているとして、
質問の回答としては以下のようにするとできます。
while (false !== ($filename = readdir($dh))) {
if(!is_dir($filename)){
$file[] = $filename;
}
}
回答ありがとうございました。
お礼が遅くなりすいません。
$filename==".."ではなく、!is_dir($filename)を使えば良かったのですね。
"."や".."が!is_dirで対処できることも分かりました。
ありがとうございました。
No.2
- 回答日時:
余計な空白が入っています。
". "、".. "
~ ~
あと修正すべきは、変数に$を付けるのと、変数名の間違いですね。
回答ありがとうございました。
お礼が遅くなりすいません。
printで表示すると空白も表示されるので必要なものと思っていました。
変数の$はうっかりしていました。
変数の間違いというのは何か分かりませんでした。
とりあえず動くようになりました。
ありがとうございました。
No.1
- 回答日時:
このソース、エラーになりませんか?(^^;
正解を書くとスキルアップにならないと思いますのでヒントを
1)PHPの配列をもう少し勉強
2)変数名には先頭に$が必要(これはプロでも時たまやらかしますね)
などです。頑張りましょう
回答ありがとうございました。
お礼が遅くなりすいません。
配列の確認をしました。知識不足でした。
変数名の$、うっかりしてました。
改めてソースを見直して不具合に気づいたのですが、不思議とエラーにはなってなかったです。
(こういうのが、かえって嫌な不具合です)
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 集めたシートのシート名を変更したい。 下記のコードでサブフォルダにあるファイルのSheet3を集めて 6 2022/08/23 10:38
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Visual Basic(VBA) サブフォルダ(データ)にある複数の.xlsxファイルのSheet3のA2セルの値で01から左側をB2 2 2022/08/14 15:46
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- Excel(エクセル) フォルダ内のワードファイルをPDFに一括変換するVBA 3 2023/06/09 16:51
- Visual Basic(VBA) エクセルのマクロについて教えてください 物件ごとのフォルダを作成してます そのフォルダ内にサブフォル 2 2023/07/02 17:58
- PHP imageフォルダに、画像をリサイズして保存する時のファイル名を変更したい 1 2023/05/30 11:39
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Visual Basic(VBA) 貼り付けた値が消えていく 以下はソースファイルの2番目のシートのB6から最終行を取得 ターゲットファ 2 2023/07/27 12:23
- Visual Basic(VBA) 【VBA】先月分の取得ができない理由が分かりません。 2 2022/04/24 11:16
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
sqlで日付が一番古いデータの月...
-
取得したプロキシが生きている...
-
インクルードした部分が表示さ...
-
PHPのif文でその処理を途中で抜...
-
フォントの色を変えるには?
-
onedrive にexcelファイルをア...
-
別ファイルの変数を呼び出した...
-
form actionで二つ送信先を指定...
-
PHPMailerで大きなファイルが送...
-
fopenでファイルが開かない場合...
-
CFileDialogの最初のディレクト...
-
HYのAM11:00のラップの部分の歌...
-
URLが.PHPってどういう...
-
FTPコマンドでディレクトリごと...
-
TCPDFについて
-
3つ以上の論理積は利用可能なの...
-
バッチを用いたフォルダの自動移動
-
さくらレンタルサーバーでPHPが...
-
PHPのタイムアウトについて
-
文字コード変えたら、fopenでき...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
MySQLのdatetime型の月日0を削...
-
インクルードした部分が表示さ...
-
sqlで日付が一番古いデータの月...
-
指定した期間の日付生成
-
PHPで外部サイトの一部を取得し...
-
バージョン情報の取得方法について
-
ファイル書き込みでたまにデー...
-
Twitterからのリファラを取得す...
-
file_get_contentsで外部URLフ...
-
携帯用Web画面のリファーラ値の...
-
現在の観覧人数を表示したい
-
取得したプロキシが生きている...
-
onedrive にexcelファイルをア...
-
フォントの色を変えるには?
-
index.phpに入るには、どうすれ...
-
PHPのif文でその処理を途中で抜...
-
FTPコマンドでディレクトリごと...
-
PHP8を使うと、大量のWarningが...
-
別ファイルの変数を呼び出した...
-
index.phpって何ですか? 具体...
おすすめ情報