php:pydio
差分
このページの2つのバージョン間の差分を表示します。
次のリビジョン | 前のリビジョン | ||
php:pydio [2018/06/25 09:40] – 外部編集 127.0.0.1 | php:pydio [2018/07/20 14:29] (現在) – taka | ||
---|---|---|---|
行 1: | 行 1: | ||
====== PHP - Pydio(AjaXplorer) ====== | ====== PHP - Pydio(AjaXplorer) ====== | ||
+ | |||
+ | ===== はじめに ===== | ||
ここでの解説はPydio 5.04、PHP 5.4.13を前提にしています。 | ここでの解説はPydio 5.04、PHP 5.4.13を前提にしています。 | ||
- | ===== セットアップ | + | ==== セットアップ ==== |
サーバー上の任意の場所に設置して以下の2ファイルにLocale定義を加える。 | サーバー上の任意の場所に設置して以下の2ファイルにLocale定義を加える。 | ||
- | ==== conf/ | + | === conf/ |
- | <sxh php; gutter: false;> | + | <sxh php> |
/* | /* | ||
* If you have a charset warning, or problems displaying filenames with accented characters, | * If you have a charset warning, or problems displaying filenames with accented characters, | ||
行 23: | 行 25: | ||
</ | </ | ||
- | ==== conf/ | + | === conf/ |
- | <sxh php; gutter: false;> | + | <sxh php> |
//Windows users may have to uncomment this | //Windows users may have to uncomment this | ||
// | // | ||
行 31: | 行 33: | ||
</ | </ | ||
- | Windowsサーバーは "" | + | Windowsサーバーは"" |
- | ===== ワークスペースの追加 | + | ==== ワークスペースの追加 ==== |
Windows環境ではワークスペース作成時に「Character Encoding」に**CP932**を設定しないとマルチバイト文字を使ったファイル名が文字化けする。 | Windows環境ではワークスペース作成時に「Character Encoding」に**CP932**を設定しないとマルチバイト文字を使ったファイル名が文字化けする。 | ||
行 48: | 行 50: | ||
</ | </ | ||
- | ===== basename関数の不具合による文字化け対策 | + | ==== basename関数の不具合による文字化け対策 ==== |
ファイル名の先頭にマルチバイト文字を使っていると先頭の方だけ化けたり、不可解な現象が起きた。色々調べていると、PHPのbasename関数にバグがあることが判明。以下の方法で、独自の**getBaseName**ファンクションを定義し、すべてのbasenameを使っている箇所を置換することで回避できた。 | ファイル名の先頭にマルチバイト文字を使っていると先頭の方だけ化けたり、不可解な現象が起きた。色々調べていると、PHPのbasename関数にバグがあることが判明。以下の方法で、独自の**getBaseName**ファンクションを定義し、すべてのbasenameを使っている箇所を置換することで回避できた。 | ||
行 54: | 行 56: | ||
**core/ | **core/ | ||
- | <sxh php; gutter: false;> | + | <sxh php> |
public static function getBaseName($path) | public static function getBaseName($path) | ||
{ | { | ||
- | | + | |
- | $dirElements = explode('/', | + | $dirElements = explode('/', |
- | $basename = array_diff($allElements, | + | $basename = array_diff($allElements, |
- | return implode($basename); | + | return implode($basename); |
} | } | ||
</ | </ | ||
行 66: | 行 68: | ||
**basename**関数を使用しているファイル(.phpに限る)を全検索して以下に置換。 | **basename**関数を使用しているファイル(.phpに限る)を全検索して以下に置換。 | ||
- | <sxh php; gutter: false;> | + | <sxh php> |
AJXP_Utils:: | AJXP_Utils:: | ||
</ | </ |
php/pydio.1529887226.txt.gz · 最終更新: 2018/06/25 09:40 by 127.0.0.1