2012-02-24 12 views
0

myFolderiには、名前のキーワードテキストを持つ何千もの画像ファイルがあります。私は画像のリストから読み込み、テキストをdBフィールドにアップロードしようとしています。問題は、テキストの中にはl'Étéのようなutf8文字があり、このように表示されていることです。ファイルを読み込みmysqlにテキストを挿入

アクセントがdBフィールドに挿入されるように外部の文字を読み取るにはどうすればよいですか? これはイムは、これが

$str = "l’Été"; 
utf8_decode($str); 
echo $str; 
+3

'utf8_decode()' - 。http://php.net/manual/en/function.utf8-decode.php –

+0

データベーステーブルを設定する必要がありますまた、照合および/または文字セットを参照してください:(http://dev.mysql.com/doc/refman/5.0/en/charset-table.html) – horatio

+0

参照:http://developer.loftdigital。 com/blog/php-utf-8-cheatsheet – horatio

答えて

0

同じ結果を生産している

function ListFiles($dir) { 

if($dh = opendir($dir)) { 

    $files = Array(); 
    $inner_files = Array(); 

    while($file = readdir($dh)) { 
     if($file != "." && $file != ".." && $file[0] != '.') { 
      if(is_dir($dir . "/" . $file)) { 
       $inner_files = ListFiles($dir . "/" . $file); 
       if(is_array($inner_files)) $files = array_merge($files, $inner_files); 
      } else { 
       array_push($files, $dir . "/" . $file);//$dir = directory name 
       //array_push($files, $dir); 
      } 
     }    
    } 
    closedir($dh); 
    return $files; 
} 
} 

    foreach (ListFiles('../../myDirectory') as $key=>$file){ 
//$file = preg_replace('@[^\0-\x80]@u',"", $file); 
    echo $file ."<br />"; 
} 

このソリューションは、あなたのために働くことがあり、それはdirectoy内のすべてのファイルをループし、その後recursivly任意のディレクトリを意志今、それを処理する方法でありますそれが大量のファイルで終わるまで見つかった。

アイブ氏は、例えばいずれかmutliまたは単一次元アレイは、(すべてのフォルダ構造を維持することをお勧めします場合によって異なり、変更したいかもしれないいくつかのポイントを追加しました。

をしても、ファイルの拡張子を保存する場合あなたのDBにファイル名を保存

コード

function recursive_search_dir($dir) { 
    if ($handle = opendir($dir)) { 
    while (false !== ($file = readdir($handle))) { 
    if (in_array($file,array(".",".."))) 
     continue; // We dont want to do anything with parent/current directory. 

    if (is_dir($file)) { 
     $result[] = recursive_search_dir($file); // Multi-dimension 
      # OR 
     array_merge($result,recursive_search_dir($file));// Single-dimension if you dont care about folder structure. 
    } else { 
     $result[] = utf8_decode($file); // full file name (includes extention) 
      # OR 
     $result[] = utf8_decode(filename($file,PATHINFO_FILENAME)); // if you only want to capture the name and not the extention. 
    } 
    } 
    closedir($handle); 
    } 
    return $result; 
} 
$files = recursive_search_dir("."); // recursively searcht the current directory. 
関連する問題