PHP: 2009年2月アーカイブ

いや、もうそんだけ。さっき知って感動した。

"\n"とか"\r\n"とか書かなくていいから。

http://jp2.php.net/reserved.constants

PHP 4.4.0 and PHP 5.0.5 から使えるということで。

こんにちは。
Zend_Db_Tableを使って取得したデータに更新をかけようとしたら
exception 'Zend_Db_Table_Row_Exception' with message 'This row has been marked read-only' in
とでた。「読取専用」でっせ、ということらしい。いや、でも似たような処理しているところで大丈夫なところもあったのに・・・と思って違いを調べてみた。
携帯はとにかく文字入力がめんどくさい。
だから、ログインも自動で行いたい。よくある「かんたんログイン」とか「自動ログイン」とかだね。

結論からいうと、セッションに入れたZend_Dateオブジェクトを引数にZend_Date()のコンストラクタを呼ぶとSegmentation faultが起きるっぽい。そんなことをする必要があるかどうかは別にして。

ある日、画面をポチポチっと遷移してたら画面が真っ白になった。
アプリログもapacheログもでてなくて、困ったなーと思ったらバーチャルホストで指定しているログじゃなくて、おおもとの/usr/local/apache/logs/error.logに
[notice] child pid 6191 exit signal Segmentation fault (11)
っていうのがたくさんでてた。

What's newとかニュースとかそういうのに掲示日付から〇日以内のものにNewマークとかをつけるやつ。

WEBサービスの地図なんかを使うときには、住所の緯度経度が必要なことが多い。住所から緯度経度を求めることをジオコーディングという。

といっても、これもWEBサービスで解決する。google geocodingだ。
前に、生年月日とかの日付をセレクトボックスにするか記入式にするか悩んだという日記を書きましたが、僕は記入式+カレンダーで選択できる機能というようにしました。(メインユーザーの特性にもよるけど)。
が、これはPCサイトの話で、カレンダーのやつはJavascriptで動くため携帯では使えない。
なので、携帯だとやっぱり選択式かなあと考え、selectを使うことにした。
マニュアルには
二番目の引数に文字列の配列を指定すると、各要素の内容を AND 演算子で連結して使用します。
と書いてあるけど、なぜかこれの意味がわからなかった。
ブログのタイトルが「Javaとrubyと男と女」なのにPHPのエントリが一番多くなっちゃった。

とにかく一意な値が欲しいときないですか?そういうのにシーケンスとか使っている人もいるかもしれない。でもシーケンスって意外にかぶるんだよね。いくつまでいってるかわかんなくなったりして。
会員登録とかに代表される入力項目がたくさんある入力フォームを見ると、パソコンの、ワードの、キーボードのプロであるところの僕ですらうんざりする。一言でいうと苦行。
たくさん入力したすえに登録ボタンを押したら「〇〇が間違ってます」とか言われると悲しくなる。もっと早く言えよ、と思う。
ということで、できるだけ入力フォームの苦行を和らげる工夫を調べたり、考えたりしたのでメモ。


前に携帯なら文字コードはshift_jisにせねば、といったエントリを書いたが最近の携帯は、だいたいutf-8にも対応しているようだ。

携帯はCookieが使えないからセッションを維持するにも一工夫必要。
と思ったら自分のAUの携帯は、Cookieが使えるらしく、普通にセッションが維持できてた。
と、どうやら、最近のAUとSoftbankの携帯はCookieに対応している機種が多いらしいです。

しゃーないので、docomoからシミュレータをゲットして試してみたら、ばっちりセッションを維持できなかった。これで、開発ができる。
(追記:)キャリアが配布しているシミュレータよりFireMobilesimulatorの方が100倍いいかも
更新頻度が低く、かつ、参照頻度の高いマスタデータとかは、毎回DBからとってくるのはパフォーマンス的にもったいないコストになりがち。
とはいえ、定数クラスっぽいところに書いておくのも、データの一元管理という意味でもよくはないだろうし、なんかデータをロジックに混ぜちゃっているみたいで気持ち悪かったりする。


前回の続き。だらだら続けます。

次に、DBとかに格納されているテキストのうち、全角カタカナは半角カタカナで出力したくなった。SEOの意味とか見やすさの意味とかで。


前回の続きで、2.携帯サイトの文字コードをShift_jisにする。をやる。

その前にまず、携帯サイト用のindex.phpを作ってみる。

さて、PCサイトが完成、もしくはある程度できた時点で、これまで作ったモジュールをうまく利用しながら携帯サイトをチャチャっと作ろう、という段取りはそんなにめずらしくないと思う。

その場合に行った以下2つの作業のメモ。

1.モジュールの構成を変更する。
2.携帯サイトの文字コードをShift_jisにする。

このアーカイブについて

このページには、2009年2月以降に書かれたブログ記事のうちPHPカテゴリに属しているものが含まれています。

前のアーカイブはPHP: 2009年1月です。

次のアーカイブはPHP: 2009年3月です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。