purazumakoiの[はてなブログ]

技術メモから最近はライフログも増えてきてます。

PHP

PHPで UTF-8←→SJIS の変換を行う場合は"SJIS-win"に注意!

csvからデータを読み込んで、utf8のwebページで表示するプログラムを作ったんだけど。 csvで簡単に入力できるとなるとやはりexcelで編集したいわけ。 なので SJIS → UTF-8 の変換をしたら、「〜」とか「粼」とかのいわゆる難しい系の文字は 文字コードの持ち…

指定期間内のデータを抽出

前にMYSQLでDATE型とかDATETIME型と年で比較 - purazumakoiの[はてな]で、その年のデータを抽出するのは作ったが、今回は年月日で検索する。 【テスト環境】mysqlの4.0x系 フィールドの型はDATE型 結論としてこんなSQLになればいい*1 /* 2009-01-01 〜 2009-…

PHP5.1.6のバグかな?

// 配列 $hoge = array('test1','test2'); ${$value} = $hoge; ってすると $_SESSION[$value] = $hoge; ってなる。 なんだろう、設定とかもあるんだろうか

配列の先頭と最後の値を取得する方法

引用(自分用の補足を+): 配列の先頭と最後の取得方法 - Heavens hell _array); $first = reset($this->_array) ?>

*セッション・ハイジャックの予防策

セッション固定攻撃への対策。 僕はphp4から入っているのでそれ以前のことは考慮に入れない php4でやるときは $old_session_id = session_id(); session_regenerate_id(); unlink(session_save_path() . '/sess_' . $old_session_id); php5でやるときは // …

文字変換用の関数

エンコードする文字列、もしくは配列 戻り値 エンコード後の文字列、もしくは配列 =================================*/ function fUTF8($str){ if(mb_detect_encoding($str) != "UTF-8") { if(!is_array($str)){ $str = mb_convert_encoding($str, "UTF-8"…

docomoのiモード拡張ヘッダをphpで取得するコード

「HTTP_X_DCMGUID php」でググったら結構出た。 ↓より引用 iモードIDをPHPで取得するサンプルソース|IT徒然草 <html> <head> <title>iモードID</title> </head> <body> <a href="index.php?guid=ON">ここをクリック</a><br> "; ?> </body> </html> 公式アナウンスはこちら 作ろうiモードコンテンツ:iモードセンタの各種情報 | サービス・機能 | NTTド…

PHPでHTMLをパースする。

スクレイピングをやってみる HTML Parserを使います。 参考リンク HTML Parser for PHP:WEB管理者の為の総合ポータルサイトBenzo 研究開発:PHP HTML-parserの使い方 - livedoor Blog(ブログ) 今回はクックパッド(COOKPAD)の「話題のレシピ」の情報を取得…

CBL ActiveRecordを試す

あんまり使ったことがないのでO/Rマッピング・ライブラリを試してみる なんだか簡単そうなので「CBL ActiveRecord」をちょっと試してみた。 確かに簡単だ。ここで動いている ■制約は ・コネクトするテーブル名と同じクラスを作る(複数の場合はその分増やす…

バックグラウンドで処理をする(引数を渡す)

バッチ処理をする時など、バックグラウンドで処理をしたい時は往々にしてあります。 参考にしたところ PHP第2回:PHP中級(外部プログラムの実行/バックグラウンドでの実行) コマンドライン引数を受け取る - phpspot 上記のリンクを参考にして以下のコードを…

PHPにおける@(アットマーク)

関数名の前に@(アットマーク)がある場合がある これはナンだろう??簡単に言うと、エラーを出しませんよって意味 エラー制御演算子って言う名前らしい。 例)ユーザ関数の実行時 Notice: Undefined といったエラーではない(警告)ので無視したいものの…

バッファをためて一気に出力する PHPのob_start

文字コードを変えて一気に出力する方法(PHPのob_start) | IDEA*IDEA ob_start -- 出力のバッファリングを有効にする。 要は、外部に出さずに、内部に保存しますよって命令。 ob_get_contents -- 出力用バッファの内容を返す ob_startを実行して以降の、内…

ゼロパディングの方法

ゼロパディングとは桁数が足りない時0を付加してあげること 逆に、桁数固定時などで、左についてしまっている要らない0を消してあげることをゼロサプレスという。 月を表示するときによく使う 書き方はこんな感じ

explode()とimplode()

さて、phpにはexplode()とimplode()というStrings(文字列関数)があります。 explode()ってのは知ってたんだけど 引用:explode - PHPプロ!マニュアル

ローカルだと動くのに本番サーバだと上手くいかない場合

例えば画像のUP機能とか ローカルはLANで環境作ってて、 本番はホスティングのサーバだとFTPでファイルアップしてたりします。 コンフィグの設定とかは結構疑いますが、 大体僕が陥るのは、パーミッション!! 755とか777にしないとね><; って事が良くあ…

変数名を動的にしたり、変数の中のn文字目を変更

PHP

変数を中カッコで囲んであるコードに出会った こんなの 変数に中カッコが使ってあるものは今まで見たことがなかったのでチョット調べてみたら。。 こういうことのようだ PHPに関する質問です。 ・・・ 人力検索はてな つまり、中カッコは変数名の結合 ここ…

正規表現のデリミタ

正規表現を使う時いまだに サルにもわかる正規表現入門にお世話になってる僕ですが、 今回こんなエラーが出てきました。 Delimiter must not be alphanumeric or backslash in 〜 翻訳に通すと デリミタ(先頭と末尾の区切り文字)は英数字やバックスラッシ…

SQL Injectionの防御法 その1

詳しくはコチラ intval - phpspot addslashes - phpspot // 整数型の場合 $id = intval($_POST["id"]) // 文字列型の場合 $password = addslashes($_POST["password "])

フレームワークとは何か

19日の朝礼でZend Frameworkについてフランス人の人がしゃべっていたので、そもそもフレームワークって何ぞや?と思って調べたので自分的解釈でメモメモ 大まかな概念としてわかり易く書いてるつもりだけど、合ってるか心配 フレームワークって何だろう?MVC…

PEARのXML_RSSでRSS取得

RSSを取得して最新の何件とか表示したいと思ったので 会社の開発環境にこの日記のrssを表示してみた (最初は必ずgooのRSSリーダーのページに飛ぶのがなんかイヤだなー) ここは最新5件しか出してないみたいなので、とくに何件しか出さないとかいう処理はし…

PHPとRubyの文法面での比較(===って何か調べた時に出会った)

PHP

===って演算子の意味はなんだろうかと思ったのです。 参照: PHPとRubyの文法面での比較PHPマニュアルで検索 要はデータの型までマッチングしているかってことらしいですね。

Image_Graphで円グラフ作ってみた。

PHPでグラフをつくるということで、作ってみた。 ググってみたけど、あんまりサンプルないし、日本語のマニュアルないので(有っても理解できないかもしれないけど・・・ なんかPEARでそういうライブラリがあったのでそれでやってみます。 外部ファイルとし…

色々とわかりやすくまとめてあるサイトを見つけた。

PHP

例のごとくソケット関連のことでさまよっていたら こんなサイトを見つけた。 heeha.ws - PHP関係 「PHPでSOCKET通信」ってとこでgoogleに誘導されてきたと思うけど、 他にも デバック用のprint関数とか↓3つが紹介されてた (print_rしか知らなかった)何か…

SESSION(セッション)について

PHP

セッションって何?っていうのが実はあんまりわかってなかったので 使い方はまぁいいとして、問題は消し方! こういった値を保持しておくというのは色々を気を使いますね。 ということでセッションを破棄する!というテーマで調べる。まずはマニュアルみまし…

ソケット通信で1プッシュ2アクション!

今回、ある外部aspサービスを利用するんだけど、そのサービスのAPIに、登録、削除の機能はあっても、何故か変更の機能が標準ではないので、 1つのボタンを押したら、一旦削除して、もう一度登録で、合わせて変更!ってしようということになった。 探して…

1行比較(if文の代わり)のサンプル(三項演算子のこと)

簡単な比較ならif elseを使わずに一行でやりたいので 2010/02/23 追記 HTMLに埋め込む場合など、簡単に書く場合

Mailでの改行コード

PHP

普通にwindowsで開発するとCR+LFなんですが、 macだとCRのみだし UNIXだとLFのみだし そのせいか確認しただけでも、各アプリごとにメール受信時の改行がちょっと違う outlook Express :ちゃんと改行される outlook: 改行がスペースになる thunderbird: 改…

PEAR::Text_Highlighterでソースコードに色づけ出来るだって!?

PHP

まーこういうことらしいです! ITPro http://itpro.nikkeibp.co.jp/article/COLUMN/20070704/276651/?ST=oss