PHP

PHPで do switch while という書き方が出来るのを知った

PHP

とある調べものをしているときに見つけた記述方法へー、ってなったのでメモ

PHPの無名関数とeAccelerator の相性にに関して

PHP

以前以下のようなポストをしたspl_autoload_registerで無名関数を使ったときのエラーが出て解決できない - にっき思い立って再調査 環境 PHP5.4 現象 cliでは無名関数が使えるのに、WEB経由だと無名関数がNULLになってしまう同等の環境を手元に作ってWEB経由…

PHP の crypt で Blowfish を使う

PHP

PHPでパスワードをDBとかに格納する際にハッシュ化するのは常識として、その場合のハッシュ化をどうするか5.5以上ではpassword_hashという関数があるので、それを使えばいいとして、それ以前のバージョンでの場合PHP: crypt - Manual PHP: パスワードのハッ…

apache2のMultiViewsではまった話

新規に環境構築しようとしてはまった話DocumentRoot直下に下記のようなファイルを用意しておく hoge.php

spl_autoload_registerで無名関数を使ったときのエラーが出て解決できない

PHP

spl_autoload_register()に無名関数を渡す下記のようなコードを書いた

PHP5.4 における htmlspecialchars の挙動変更に関して

PHP

いままで、5.4で動かしてなかったやつでhtmlspecialchars()を通すと空が返ってきて、あれれ?と思ったら5.4になってデフォルトの文字コードがUTF-8になったために挙動が変わってしまったようだまぁ、詳細は徳丸さんのブログに1年半くらい前に書いてあるので…

PHPUnitを試してみる

PHPでユニットテストするためのPHPUnitを試してみることにする とりあえずは自分用のメモインストールとかはPHPUnitのページを見ればわかるので省略 PHPUnit – The PHP Testing Framework注意点としてはpearのupgradeをちゃんとやっておくことくらいかな # s…

CentOS5 + PHP5.3 でエラーが出ていたので対応

PHP

CentOS5にremiリポジトリからいれたPHP5.3で以下のエラーが出ていたので対応してみる PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/modules/imagick.so' - /usr/lib/php/modules/imagick.so: undefined symbol: php_set_error_h…

PHPのファイルアップロード数上限設定にはまった

PHP

たくさんのファイルをアップロードするフォームで片方の環境ではアップロードできるのに、もう片方ではアップロードできなくて色々と調べていたら・・・ PHP 5.2.12 からアップロードするファイル数の上限が設定に増えたようで、それに引っかかっていた 参考…

herokuにPHPをpushしてみた話

さくらのVPSを借りたので色々とgitを使ってお試し中 heroku toolbeltのインストール herokuを使うにはtoolbeltというものを入れないといけないらしいので、それをインストールThe Heroku CLI | Heroku Dev Centerを参考にheroku toolbeltをインストール % wg…

第59回PHP勉強会@東京に行ってきました

勉強会への参加は初めて! 前々から興味はあってタイミングを狙っていたんですが、ついに念願かなって(笑)参加できました〜ざっくりと思いつきのまとめ mac率高い! 会場を見渡すとmacだらけでした むしろMacBook Airだらけ? それだけ、WEBとmacの親和性が…

HTTP_RANGEではまる

動画などの大きなファイルを送信するときにファイルの一部をリクエストする「206 Partial Content」があるんだけれども、これではまったのでメモ HTTP_RANGEで必ずしも終了値がリクエストヘッダに含まれるわけではない クライアントからのリクエストヘッダで…

ethnaインストールでけた

PHP

pear で ethna がインストールできない - にっき utterramblings リポジトリから pear のアップデートをしてみる - にっき ethnaがインストールできない php と pearを違うyumのリポジトリからインストールしてるからじゃない? じゃーpearもアップデートし…

utterramblings リポジトリから pear のアップデートをしてみる

PHP

pear で ethna がインストールできない - にっきで書いたとおり、ethnaのインストールができなかったでpearもアップデートしてみることにしたutterramblings から php を入れているので、それにあわせてpearもアップデートしてみることにした Yum Repository…

pear で ethna がインストールできない

PHP

環境 CentOS5 PHP 5.2.13 たしか諸事情によりここから入れた気がする Yum Repository Setup Instructions | Utter Ramblings PEAR 1.4.9 channel-discover で怒られる channel-discover すると怒られる # pear channel-discover pear.ethna.jp Discovery of …

Smartyのinclude内でassignした変数のスコープに関して

Smarty側で特定の文字列を表示したかどうかが判別したくて以下のようなことをしてみた base.tpl {include file='include.tpl'} {assign var='hogehoge' value='fugafuga'} include.tpl {assign var='hoge' value='fuga'} test.php display('base.tpl'); // f…

【緩募】開発環境

他の人の開発環境が気になる 開発をやっていて気になるのが他の人の開発環境普段はこんな感じ OS Windows まぁ、支給されてるからどうにもならんけど エディタ ViVi viのキーバインドが楽すぎて、もう他のエディタに戻れなくなってしまった・・・ カーソルキ…

AndroidのCookie関連ではまったこと

Androidアプリを作っていてCookie関連ではまったのでメモ WEB側とアプリ側両方でsetCookieすると同名のCookieが複数出来てしまう 標準ブラウザからクッキーを引き継いでくる必要があったので、明示的Intentでアプリ起動時にパラメータ渡してアプリ内でsetCoo…

mysql_closeのなぞ

時間がかかる処理をするプログラムでmysqlの接続が必要なくなった時点でmysql_closeでMySQLの接続を明示的に閉じているのにSHOW PROCESSLISTをするとまだ接続が残ってしまっているのはなんでなんだぜプログラムはこんな感じ

CakePHP Model::saveAll 内での afterSave が呼ばれるタイミング

hasManyで関連付けてあるデータの中身を全て別のところに保存しようと思ったんだけど、どうやら無理っぽい saveAllの流れ saveAll内ではsaveが呼ばれている saveの中でafterSaveが呼ばれる hasManyとかの関連データははsaveAll内のsaveが終わった後に処理さ…

CakePHP で GROUP BY したときの COUNT(*) AS 〜〜 のデータの入り方が気持ち悪い件について

CakePHPのモデルでデータ取得するときにGROUP BYかけて、COUNT(*) AS num みたいにして値を取りたいときにデータの入り方がなんか気持ち悪いコントローラ 'hoge.value', 'fields' => array('key, COUNT(*) AS "num", value'), ); var_dump( $this->Hoge->fi…

CentOS5 + CakePHP で PCREのWarning

CentOS5にCakePHP1.3.7を入れたらこんなのがでた PCRE has not been compiled with Unicode support. Recompile PCRE with Unicode support by adding --enable-unicode-properties when configuringようはPCREのコンパイルオプションで --enable-unicode-pr…

spl_autoload

PHP

PHP5になって__autoloadが使えるようになった で、色々調べていたら気になることがマニュアルに・・・ PHP: クラスのオートローディング - Manual 注意: オートローディングは、PHP を CLI 対話モード で実行している場合は使用できません。で、spl_autoload…

singletonメソッドがあるクラスはsingletonを呼びたいけどだめだった件

PHP

どっか配列にクラスメイト生成するインスタンス変数名を格納しておいて、それを使って一気にnewしたかった んで、さらにsingletonメソッドが有る場合はそれを使ってインスタンスの生成をしたかった やってみた 安直に想像して以下のようにやってみた $insta…

開発環境のフォント変更

自分で作ったはずのプログラムがスパゲッティすぎてどこで宣言されているのかがわからなくなってきたので、統合環境を導入導入したのはNetBeans(Wikipedia)あちこち参考にして以下の環境を構築 jViでキーバインドをVimと同等に Twilightテーマを導入 フォン…

CakePHP雑感

ちょこっと時間があるような勘違いをしてCakePHPを触ってみた とりあえずgit cloneでローカルに持ってきて、http://book.cakephp.org/ja/view/1528/Blogに沿って色々と弄ってみた なんだか、あれよあれよという間に一覧、編集、削除、追加の機能が出来てしま…

冗長な処理をどうにかしたい

PHP

DBにクエリ投げて、帰ってきた行数みて、データ取得するかどうかの判定が冗長な気がするのでなんとかしたい そんなときのためのO/Rマッピングなのか?

さわってみたいフレームワーク

symphony どんなのかまったく未知 でも、使っている人が多そう CakePHP cakeをbakeするらしいことはわかってる Ethna だいぶ前に一度触って、自分の頭が切り替えしきれなくて断念した覚えが・・・wなんにせよ、コマンドラインからgenerateするのが一般的な…

クエリの実行時間もそうだけど、接続数もね

作ったサイトの負荷が全然さがらなくて、slowログに乗っかってくるクエリがいくつかあったので、それをどうにかできないかとあれやこれややっていたで、ふと別のところで大量にPHP経由でMySQLへのアクセスが行なわれているところがあったので、そこをMySQLに…

PHPセッション周りのバグ

PHP

PHPで独自のセッションハンドラを使っているときの問題点session_set_save_handler(); ↓ session_start(); ↓ session_destroy(); ↓ session_start();とやるとエラーがでる PHP Fatal error: session_start() [function.session-start]: Failed to initialize…