このタイトルをみて、カウントがぶれるという話とご想像がつく方も多いと思いますが、まさにその通りです。

strlen()で全角文字のバイト数がぶれる

UTF-8環境でPHPのstrlen関数を使って全角文字をカウントすると、全角文字が2バイトではなく1から6バイトとしてカウントがされてしまいます。この開発日誌を読み直してみたところ、1年前くらいにサイトの文字コードをSJISからUTF-8に変えておりました。

UTF-8をSJISに変更してからカウント

解決方法はいたってシンプルで、strlen()を使う時には文字コードをSJISに強引に変えてしまえば問題ありません。

strlen(mb_convert_encoding($text,"SJIS","UTF-8"))

放置していた画像掲示板を手入れした際に、文字のカウントがどうもおかしいとは思っておりましたが、やっと修正をすることができました。

imgbbs_201109.gif
当時の画像掲示板の泉イメージ

おわりに

画像掲示板は少しずつ書き込みが増えてきたので、せっかくなのでサブドメイン化をして、ディレクトリ型検索エンジンdtnと分けた別サイトに仕立ててみましたこれに合わせてデザインも多少変えて、サイト名も画像掲示板の泉に変更しました。

ゼロから作った掲示板プログラムですので、まだまだ不具合が多いとは思いますが、よろしくお願いいたします。

ABOUT dtn.jp

この運営ブログをみてdtn.jpの運営サイトに興味をお持ちになった方は下記のリンク集からサイトをご参照ください。PHP・SQL・JS・HTML・CSSや様々なAPIでゼロから立ち上げたサイトを複数運営しています。

dtn.jp関連サイト

  • ディレクトリ型検索エンジンdtn大手サイトは全てサービスを終了し、中小でも運営を継続するところがほとんどなくなってしまったディレクトリ型検索エンジンを2002年から細々運営しており、未だに細かい機能改修も行っております。申請されたサイトは実際に訪問して細かく確認をしているので登録までかなりお時間いただきます。
  • 猫ネコサーチエンジン猫・ペットサイト専用のディレクトリ型検索エンジンです。登録サイトはサイトのスクリーンショット付きでカテゴリに掲載しています。
  • 画像掲示板の泉画像やYouTubeやニコニコ動画が貼り付け可能な匿名画像掲示板です。27ジャンルに分かれた掲示板に、それぞれ100スレッドまで立てることが可能です。
  • ツイータンTwitter APIを使って10分おきに収集したTwitter(ツイッター)のトレンドワードや人気ハッシュタグデータを月別に集計してランキング形式で公開しています。
  • Keyword Tool++Yahoo APIや楽天サイトのデータを日次で収集したデータを元に、EC系キーワードをラインキング形式でご紹介しています。各ワードは検索ボリュームや関連語、24か月の検索ボリュームトレンドを確認も可能です。
  • 消費者金融の泉カードローン商品を取り扱う金融業者を一覧で比較可能としたサイトです。カテゴリ別、人気度別、限度額別、金利別に比較可能なサイトにしています。
  • TrendinGファッションモールに出店するブランドをアイテムヒット率でランキングとしたサイトです。まだβ版です。

各サイトの開発方法などについて

各サイトの開発方法や運用トラブルについては、当ブログで不定期にご紹介しています。Twitterで新着記事のお知らせもしています。宜しければフォロー下さい。