しかしながら、ディレクトリ名が SJIS の場合は「表」などバックスラッシュ(0x5C)を含む日本語文字をディレクトリ名に使用するとうまく処理してくれません。
以下のように独自に入れ子構造を処理する関数を定義する必要があります。
class sample {
function mkdir($pathname, $mode, $recursive) {
if (!$recursive) {
return mkdir($pathname, $mode);
}
if (!is_dir(dirname($pathname))) {
if (!$this->mkdir(dirname($pathname), $mode, $recursive)) {
return false;
}
}
return mkdir($pathname, $mode);
}
}
$recursive=true としない mkdir はバックスラッシュ(0x5C)を含む日本語文字も正しく扱いますので心配ないです。
function mkdir($pathname, $mode, $recursive) {
if (!$recursive) {
return mkdir($pathname, $mode);
}
if (!is_dir(dirname($pathname))) {
if (!$this->mkdir(dirname($pathname), $mode, $recursive)) {
return false;
}
}
return mkdir($pathname, $mode);
}
}
0 件のコメント:
コメントを投稿