タグ

ブックマーク / t-komura.hatenadiary.org (8)

  • 一部の言語構造と関数で引数の値に NULL バイトが含まれていた場合の挙動修正 - t_komuraの日記

    PHP 5.3.4(最新は PHP 5.3.5) で、引数の値にファイルパスが指定可能な言語構造と関数に NULL バイトが含まれていた場合、処理が失敗するように修正されました。 http://svn.php.net/viewvc?view=revision&revision=305507 簡単に調べてみたところ、少なくとも、以下の言語構造と関数が該当するようです。 言語構造 include include_once require require_once Bzip2 bzopen Enchant enchant_broker_request_pwl_dict Fileinfo finfo_open GD image2wbmp imagegd2 imagegif imagejpeg imagepng imagewbmp imagexbm iptcembed jpeg2wbmp png2w

    一部の言語構造と関数で引数の値に NULL バイトが含まれていた場合の挙動修正 - t_komuraの日記
  • 最近の mbstring 動向について(PHP 5.4〜) - t_komuraの日記

    PHP 5.4 に向けて、久しぶりに PHP の mbstring に対して機能追加と修正がありましたので、メモしておきます。 PHP 5.4.0 の正式リリースまでに「十分なテストが必要」とのことですので、気になる方はテストに参加した方が良いと思います。 変更点は以下の通りです。 携帯絵文字のサポート 正しい UTF-8 チェックの強化 詳しくは以下のページを参照してください。 mbstring/libmbfl:携帯絵文字とUnicode 6.0の相互変換 mbstring/libmbfl 正しいUTF-8チェックの強化 携帯絵文字のサポート 開発中の PHP-5.4.0alpha3 で新たに追加された文字エンコーディングは以下の通りです。 SJIS-Mobile#DOCOMO SJIS-Mobile#DOCOMO-PUA SJIS-Mobile#KDDI SJIS-Mobile#KDD

    最近の mbstring 動向について(PHP 5.4〜) - t_komuraの日記
    aki77
    aki77 2011/08/13
    『携帯絵文字のサポート』
  • PHP 5.3.2 での修正点や機能追加について - t_komuraの日記

    先日、PHP 5.3.2 が公開されました。セキュリティ問題を含む多くの修正や機能追加が行われています。 PHP 5.2.12 や PHP 5.2.13 で修正され、PHP 5.3.1 に含まれていないセキュリティ問題の修正も含まれていますので、特に PHP 5.3.0 や PHP 5.3.1 を使っている場合は、アップデートした方が良いと思います。 PHP 5.3.2 Release Announcement PHP 5 ChangeLog (Version 5.3.2) 以下に、今回のアップデートで、気になった部分についてメモしておきます。 文字エンコーディング関連の修正 PHP 5.3.2 の ChangeLog などには書かれていないような気がしますが、以前、以下に書いた問題の修正が行われています。 PHP 5.2.12 の文字エンコーディング関連の修正点 最新の PHP スナップ

    PHP 5.3.2 での修正点や機能追加について - t_komuraの日記
    aki77
    aki77 2010/03/08
  • PHP 5.3.0 の日付処理クラスと関数の追加・変更について - t_komuraの日記

    PHP 5.3.0 が公開されたのは結構前ですが、日付関係の処理について、PHP 5.3.0 でクラスや関数の追加・変更がありましたので、気になった部分だけ調べてみました。 新しく追加されたクラスとメソッド PHP 5.3.0 では、以下のクラスが追加されました。 DateInterval - 日付の間隔を表わす DatePeriod - 日付の期間を表わす DateTime クラスには、以下のメソッドが追加されました。 DateTime::add() - 年月日時分秒の値を DateTime オブジェクトに加える DateTime::createFromFormat() - 指定した書式でフォーマットした新しい DateTime オブジェクトを返す DateTime::diff() - ふたつの DateTime オブジェクトの差を返す DateTime::getLastErrors()

    PHP 5.3.0 の日付処理クラスと関数の追加・変更について - t_komuraの日記
    aki77
    aki77 2010/01/12
  • いわゆる半角カナや種依存文字などをメールで送信する方法 - t_komuraの日記

    随分前から書こうと思っていて忘れていたのですが、役に立つ人がいるかもしれませんので、書いておきたいと思います。 メールの送信エンコーディングに UTF-8 を使用すれば、機種依存文字という問題を気にする必要はほとんどありませんが、まだ一般的には、ISO-2022-JP を使用してメールを送る方が多いと思います。ただ、PHP の mb_send_mail() では、いわゆる半角カタカナや、機種依存文字を送信することはできません。これらの文字は '?' に変換されます。 PHP 5.2.1 からは、レガシーエンコーディングの追加として、ISO-2022-JP-MS というエンコーディングが追加されました。ISO-2022-JP-MS を使用すれば、このエンコーディングでサポートされている文字を送信することができます。ISO-2022-JP-MS については、[PHP-dev 1345] PHP

    いわゆる半角カナや種依存文字などをメールで送信する方法 - t_komuraの日記
    aki77
    aki77 2009/11/04
  • プライベートメソッドに対するテスト方法 - t_komuraの日記

    phpunit などを使って PHP スクリプトをテストする時に、プライベートメソッドをテストしたくなる時があると思いますが、PHP では結構難しいように思います。 PHP でプライベートメソッドをテストする方法として、思い付くのは以下の方法くらいでしょうか。 パブリックメソッドからプライベートメソッドを完全にテストできるように工夫する プライベートメソッドのテスト用にパブリックメソッドのラッパーを作成しておく テスト時のみ、テストしたいプライベートメソッドの Private を Public に書き換える Runkit などを使って定義を変更する 1. が実現できれば問題ないのですが、全てがうまくいくようにパブリックメソッドを作成するのは困難だと思います。また、テストのためだけにメソッドを増やしたり、変更したくないため、2. と 3. はあまりやりたくありません。4. であればできそうな

    プライベートメソッドに対するテスト方法 - t_komuraの日記
    aki77
    aki77 2009/08/10
  • t_komuraの日記

    最近の PHP(PHP 4.3.11 以降) の mbstring には多くのバグが報告、修正されていますが、そろそろ把握しきれなくなってきましたので、まとめてみました。何か間違い等ありましたら指摘していただけると幸いです。 これらのバグは CVS では既に修正されていますので、今後、公開されるバージョンでは問題ありません。また、PHP のバージョンは Patch を適用していないソースのものです。 PHP 5.0.6 はリリースされない可能性が高そうです。 mb_detect_encoding() が失敗する 概要 mb_detect_encoding() が正しく文字コード検出をできないことがある。 これが原因で mb_convert_encoding() が失敗することがあり、文字化けを起こすことがある。 バグを含んでいるバージョン PHP 4.3.11 PHP 5.0.0 - PH

    t_komuraの日記
    aki77
    aki77 2005/11/06
  • t_komuraの日記 [セキュリティ]Web Application Security Reviews

    PHP Everywhere に Web Application Security Reviews という、投稿がありました。 非常に興味深かったので、訳してみました。金融機関で受けた Web アプリケーションのセキュリティチェック項目をまとめたものだそうですが、結構厳しいです。 誤訳などがありましたら指摘していただけますと幸いです。 全ての重要な作業過程において、開発側と検査側を含めなければならない。言い換えると、もし私(開発側)が重要な案件を作成する場合、他の誰か(検査側)の検査と承認を受けなければならない。 取引の活発な団体の全ての取引において、ユニーク ID と(前後の)変更データ、タイムスタンプを保存しなければならない。 PHP または ASP で使用される全てのデータベースのパスワードは暗号化されていなければならない。 もし、Web アプリケーションがインターネットに公開される

    t_komuraの日記 [セキュリティ]Web Application Security Reviews
  • 1