2007/10/18 木曜日

携帯サイトを作成したときの参考リンク

カテゴリー: PHP — trek @ 21:13:16

UTF-8のHTMLページを表示できる端末用の携帯サイトを作成したときに参考になりました。

各社のXHTML情報ページへのリンク

PHPフレームワーク比較記事リンク(サンプルアプリケーションの構築)

カテゴリー: PHP, Zend Framework — trek @ 4:28:24

広く利用されている3つのPHPフレームワーク(Zend Framework、symfony、CakePHP)に関する記事へのリンクです。
developerWorks : IBM’s resource for developersで、サンプルアプリケーションの構築の記事が、「PHP frameworks, Part 2: Building the sample application」として、追加されています。

はじめの一歩として、手順通りに実行してみるのもよいかもしれないです。

2007/10/17 水曜日

PHPは2位

カテゴリー: プログラミング — trek @ 5:01:41

次の記事(Ajaxian.comの調査報告)の「使っているプログラミング言語やプラットフォーム」で、PHPは2位とのこと。

【レポート】最も人気あるプログラミング言語は「JavaScript」 - Ajaxian.com調査報告 (1) Ajax開発における関心事1位は「クロスブラウザレンダリング」 | エンタープライズ | マイコミジャーナル

「使っているプログラミング言語やプラットフォーム」で、C#が6位(VB.netより上)なのが、ちょっと目にとまりました。

2007/10/13 土曜日

httpd.confでPHPの設定変更メモ

カテゴリー: PHP — trek @ 20:17:52

httpd.confでは、「php_admin_flag 設定項目 Off」のように記述します。

例:

<Directory /usr/local/httpd/htdocs>

php_admin_flag expose_php Off
</Directory>

(.htaccessでは、「php_flag 設定項目 Off」のように記述します。)

2007/10/12 金曜日

Zend Framework: Zend_Db_Select::joinLeftメモ

カテゴリー: PHP, Zend Framework — trek @ 7:34:19

Zend_Db_Select::joinLeftの3番目の引数に空の配列を指定すると、joinLeftで指定したテーブルのカラムをSELECTで取り出すカラムに追加されないようになります。

例:

PHP:
  1. $select->from(array('a'=>'tbl_a'),
  2.                   array('cnt'=>new Zend_Db_Expr('COUNT(*)')));
  3. $select->joinLeft(array('b'=>'tbl_b'),'a.id=b.id',array());
  4. $where = $db->quoteInto('b.tmp_id = ?', '2');
  5. $select->where($where);

上記のように作成したSQLは、次のようになります。

SQL:
  1. SELECT
  2.     COUNT(*) AS `cnt`
  3. FROM `tbl_a` AS `a`
  4.  LEFT JOIN `tbl_b` AS `b` ON a.id=b.id
  5. WHERE
  6.     (b.tmp_id = '2')

2007/10/11 木曜日

MySQL:TIMESTAMPメモ

カテゴリー: MySQL — trek @ 0:08:10

MySQLで、timestampのカラムを定義するとき、「ON UPDATE」というものがあることを、「PHP frameworks, Part 1: Getting started with three popular frameworks」で知ったので、メモです。

MySQL AB :: MySQL 5.1 リファレンスマニュアル :: 10.3.1.1 TIMESTAMP MySQL 4.1での性質より、引用。

DEFAULT CURRENT_TIMESTAMP と ON UPDATE CURRENT_TIMESTAMP 条項の両方で、カラムはそのデフォルトに現在のタイムスタンプを持ち、それは自動的に更新されます。

定義の例より引用:

CREATE TABLE t (ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP
ON UPDATE CURRENT_TIMESTAMP);

2007/10/10 水曜日

PHPフレームワーク比較記事リンク

カテゴリー: PHP, Zend Framework — trek @ 23:53:02

CakePHP のおいしい食べ方: IBMでPHP3大フレームワーク記事スタート」で、次の記事が紹介されていました。

PHP frameworks, Part 1: Getting started with three popular frameworks

symfonyは、次の記事を見て、個人的に選択することはないかも、と思っていますが、上記、比較記事を今後楽しみにしたいと思います。

PHPベンチマーク: Zend Framework vs Symfony vs CakePHP vs CodeIgniter vs PHP on TRAX - 徒然なるままにBlog
PHPフレームワークのベンチマーク比較:phpspot開発日誌

2007/10/7 日曜日

Zend_Session::rememberMeのメモ

カテゴリー: PHP, TODO, Zend Framework — trek @ 4:53:06

Zend_Session::rememberMe()の使用に関してのメモです。

Zend Framework: Documentationに、次のような記述があります。

セッションの開始前に Zend_Session::rememberMe() を使用すると、セッションクッキーの有効期限を制御することができます。

Zend_Session::start()の後に、Zend_Session::rememberMe() を使用しても、クッキーの有効期限が変化するようです(TODO:詳細調査)。

Zend_Session::rememberMeを使用すると、session_regenerate_id(true)がコールされています(ZendFramework-1.0.1)。
session_regenerate_id(true)をコールすると、session_set_cookie_paramsがsession_startの後でもクッキーの有効期限が変化するようです(PHP 5.2.3)。

Firefox2とInternet Explorer6のセッション関連の振る舞いの違い

Zend_Session::rememberMeを使用しない場合

Firefox2は、ブラウザを閉じても、セッションが継続するようです(クッキーの有効期限は、「セッション終了時」となっています。)(TODO:詳細調査)。
(Firefox2のクッキーに関する設定は、[オプション]ダイアログの[プライバシー]タブの[Cookie を保存する期間]を「サイトが指定した期限まで」に設定しています。)

Internet Explorer6は、ブラウザを閉じると、セッションは継続しません。

Zend_Session::rememberMeを使用した場合

Firefox2は、クッキーの有効期限が設定され、その有効期限の間は、ブラウザを閉じても、セッションが継続するようです。

Internet Explorer6も、ブラウザを閉じても、セッションが継続しました。

その他のメモ

remember_me_secondsに設定する値

Zend FrameworkのAPI Guideに、次の記述があります。

Due to clock errors on end users' systems, large values are recommended to avoid undesirable expiration of session cookies.

大きい値がどのくらいの秒数かわかりませんが、100程度の値だとInternet Explorer6では、セッションをまったく継続できないようです。

2007/10/3 水曜日

Smartyアウトプットフィルタメモ

カテゴリー: Smarty — trek @ 22:53:02

Smartyのアウトプットフィルタのメモです。

ふと、Smartyのポストフィルタとアウトプットフィルタがいつ適用されるのか気になりました。

Smarty マニュアルの次のページに記述がありました。
Smarty

テンプレートが display() 又は fetch() を経由して呼び出された時、出力は1つ又は複数のアウトプットフィルタを通して送られます。

ポストフィルタについては、次のページ。
Smarty

2007/10/2 火曜日

PHP: Strict Standardsメッセージを表示しないようにする

カテゴリー: PHP — trek @ 19:22:36

.htaccessの設定で、Strict Standardsメッセージを表示しないようにするメモです。
display_errorsがオンの場合、Strict Standards以外のサポートされる全てのエラーと警告は、表示されます。

PHPのバージョンが5.2より前の場合
php_value error_reporting 2047
PHPのバージョンが5.2.xの場合
php_value error_reporting 6143
PHPのバージョンが5.3以降、6より前の場合
php_value error_reporting 8191

PHPのバージョンが6の場合、E_STRICTが含まれるそうなので、Strict Standardsメッセージは、表示されます。

参考

エラー処理およびログ記録関数
エラー処理およびログ記録関数 - PHPプロ!マニュアル

次ページへ »

Copyright © 2007 とれっくかいはつ
HTML convert time: 0.264 sec. Powered by WordPress ME