アカウント名:
パスワード:
たとえばどんなの?PHPくらいのレイヤーだとそんなになさそうだと思ってしまうんだけど。。。
ドライブレター絡みとか、共有ディスク上のファイルのロックの挙動とかありそうですね。
トラブルとしてはたしかにありがちだけども、PHPほどのレベルと歴史で、そんなのが今さらそうそうあるの?# 内部的に汎用的な対処法が決まってそうだけど。
ファイルシステムの文字コードがCP932の環境における所謂「Shift_JISのダメ文字」がファイル名にある時のファイル認識ができない問題は回避不能な時期がありました。※ダメ文字についてhttps://ja.wikipedia.org/wiki/Shift_JIS#2%E3%83%90%E3%82%A4%E3%83%88%E... [wikipedia.org]
ファイルシステムがUTF-8ベースになったりで自然消滅した認識なんだけどバグ対応したバージョン出たのかなぁ。
PHP 7.1 でようやく解決されました。 https://www.php.net/manual/ja/migration71.windows-support.php [php.net]
> 長いpath と UTF-8のpath のサポート> Webアプリケーションが UTF-8 に対応しているなら、追加の作業は必要ありません。 UTF-8 でないpathへの I/O に依存したアプリケーションについては、 明示的に INIディレクティブを設定する必要があります。 エンコーディングのINI設定のチェックは、コアの順番に依存します:>> internal_encoding> default_charset> zend.multibyte
PHP 7.0 までは、ダメ文字問題が存在します。
本題とは関係ないとこでUTF-8→UTF-16
FAT環境のドライブ対象だとまだこの問題残ってたりするんかいな?
(NTFSの)ファイルシステムは、リリース当初から今にいたるまでずっと UTF-16ですよ。UTF-8にはなってません。FAT系はSJISで、exFatからUnicodeもサポートされましたが、こちらもUTF-16です。
FAT16でも長いファイル名はUTF-16(当時はUCS-2だったかも)をサポートしていたが?Win9xではアクセスAPIの都合で結局SJISしか使えなかったけど、WinNTはちゃんとUnicodeのファイル名をFATでも使えた。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
日々是ハック也 -- あるハードコアバイナリアン
Windows版特有のバグとは? (スコア:2)
たとえばどんなの?
PHPくらいのレイヤーだとそんなになさそうだと思ってしまうんだけど。。。
Re: (スコア:0)
ドライブレター絡みとか、共有ディスク上のファイルのロックの挙動とかありそうですね。
Re: (スコア:2)
トラブルとしてはたしかにありがちだけども、PHPほどのレベルと歴史で、そんなのが今さらそうそうあるの?
# 内部的に汎用的な対処法が決まってそうだけど。
Re:Windows版特有のバグとは? (スコア:0)
ファイルシステムの文字コードがCP932の環境における
所謂「Shift_JISのダメ文字」がファイル名にある時のファイル認識ができない問題は回避不能な時期がありました。
※ダメ文字について
https://ja.wikipedia.org/wiki/Shift_JIS#2%E3%83%90%E3%82%A4%E3%83%88%E... [wikipedia.org]
ファイルシステムがUTF-8ベースになったりで自然消滅した認識なんだけどバグ対応したバージョン出たのかなぁ。
Re:Windows版特有のバグとは? (スコア:1)
PHP 7.1 でようやく解決されました。 https://www.php.net/manual/ja/migration71.windows-support.php [php.net]
> 長いpath と UTF-8のpath のサポート
> Webアプリケーションが UTF-8 に対応しているなら、追加の作業は必要ありません。 UTF-8 でないpathへの I/O に依存したアプリケーションについては、 明示的に INIディレクティブを設定する必要があります。 エンコーディングのINI設定のチェックは、コアの順番に依存します:
>
> internal_encoding
> default_charset
> zend.multibyte
PHP 7.0 までは、ダメ文字問題が存在します。
Re: (スコア:0)
本題とは関係ないとこで
UTF-8→UTF-16
FAT環境のドライブ対象だとまだこの問題残ってたりするんかいな?
Re: (スコア:0)
(NTFSの)ファイルシステムは、リリース当初から今にいたるまでずっと UTF-16ですよ。
UTF-8にはなってません。
FAT系はSJISで、exFatからUnicodeもサポートされましたが、こちらもUTF-16です。
Re: (スコア:0)
FAT16でも長いファイル名はUTF-16(当時はUCS-2だったかも)をサポートしていたが?
Win9xではアクセスAPIの都合で結局SJISしか使えなかったけど、WinNTはちゃんとUnicodeのファイル名をFATでも使えた。