Re: ver0.1.0 utf-8環境での不具合

投稿ツリー

  • なし Re: ver0.1.0 utf-8環境での不具合 (AXYZ-SAK, 2010/7/7 1:35)
  • なし Re: ver0.1.0 utf-8環境での不具合 (なーお, 2010/7/7 23:22)

  • このトピックの投稿一覧へ

    AXYZ-SAK

    なし Re: ver0.1.0 utf-8環境での不具合

    msg# 1.1.1
    depth:
    2
    前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2010/7/7 1:35 | 最終変更
    AXYZ-SAK  新米   投稿数: 13
    引用:
    mb_substr関数は、byte指定ではなくて文字数指定ですよね。

    おぅ……確かに。
    すっとぼけてました _| ̄|○

    引用:
     調べるとphpのロケール関連で環境依存になりそうですね。
     手元にUTF-8などの3バイト文字ロケール環境が無いので検証できないのですが、
     例えば、以下のような感じでどうでしょうか。
    (mb_substrがfalseを返すようですと元も子も無いですが。。)

    検証してみたところ、みごとにコケました。
    で、mb_internal_encodingの返り値を見てみたら……ISO-8859-1。
    どうやら、当該サーバのphp.iniで、mbstring.internal_encodingがpassに
    指定されているようで。

    まぁ、広汎かつ多岐にわたって使用される事を前提にしたサーバだと
    あってもおかしくはない設定ではあります。
    で、その辺を鑑みた場合……

    引用:
    $str_enco = mb_internal_encoding();

    これを、$str_enco = _CHARSET; にしちゃった方が現実的かな、とw
    ちなみにこれも、当該症状の発生している環境でテストしましたが
    正常動作いたしました。

    投票数:0 平均点:0.00
    返信する

    この投稿に返信する

    題名
    ゲスト名
    投稿本文

      条件検索へ


    ログイン

    メインメニュー

    テーマ選択
    Cube