[PHP] Smartyプラグインの作り方[PHP] Smartyプラグインの作り方
以前のバージョンのSmartyでは{php}ステートメントを使ってテンプレート内でPHPコードを実行できたけど、新しいバージョンでは出来なくなっている模様。本家サイトのマニュアルには以下のように明記されている。 IMPO […]
以前のバージョンのSmartyでは{php}ステートメントを使ってテンプレート内でPHPコードを実行できたけど、新しいバージョンでは出来なくなっている模様。本家サイトのマニュアルには以下のように明記されている。 IMPO […]
フレームワークを使わないでスクラッチからコードを書くときは、自分でコーディング規約を決める必要がある。どうしたものかとネットを検索したらぴったりの記事を発見したのでリンクしておく。この記事では以下の結論で結んでいる。 利 […]
基本的な操作を簡単にまとめておく。 セッションの開始 session_start関数をコールする。 セッションがまだ開始されていない場合は、セッションIDが割り当てられて新しいセッションが開始される。具体的には、サーバー […]
基本的な操作を簡単にまとめておく。 クッキーの送信 setcookie関数を使う。失敗するとFALSEが戻る。 $result = setcookie('accessed', 1); if ($result) { ech […]
クッキーはウェブサーバーとウェブブラウザ間で状態を管理する仕組みである。 Wikipediaではその動作を以下のように説明している。 クッキーでは次のようにサーバとクライアント間の状態を管理する。 1. ウェブサーバがウ […]
PHPの日時関数(date)は、ローカルの日時を取得する。ローカルとは、サーバーに設定されているタイムゾーンのこと。たとえば、もしアメリカに設置されているサーバーで実行するコード中で日本時間を取得したければどうするか。 […]
date関数を使うことで文字列が得られる。 $timeStr = date("Y-m-d H:i:s", time()); echo "Current time = {$timeStr}"; // Result // C […]
サーバー情報および実行時の環境情報はグローバル配列 $_SERVER[] にセットされる。サーバーでphpinfo関数を実行することで実際の値を確認することも可能。 以下に、良く使いそうなインデックスをマニュアルから抜粋 […]
ホスト名からIPアドレスを取得することを「正引き」、IPアドレスからホスト名を取得することを「逆引き」と言う。すなわち、アクセス元のIPアドレスからホスト名を「逆引き」する方法。 アクセス元のIPアドレスは、サーバー変数 […]
処理の実行時間を計測したい場合がある。 処理の前後でシステム時刻を取得して差をとることで経過時間が得られる。 $stime = microtime(true); ... $etime = microtime(true); […]
システム関係のWindows APIを呼ぶ方法もあるが、shutdown.exeを使うと楽。shutdown.exeはWindows XP以降に含まれているらしい。 Shutdown http://technet.mic […]
基本的にC#ではポインタは使えない。unsafeコードとして記述すればポインタも使えるが、バグを生む危険性が高まるのでよほど必要でない限りはポインタは使わないほうが望ましい。しかしC++の癖で、2つのインスタンスが同じか […]
多次元配列の確保する方法。 配列の確保 int[,] array = new int[4, 2]; int[, ,] array1 = new int[4, 2, 3]; 配列の初期化 // Two-dimensiona […]
C#だと配列よりもListやDirectoryなどのコレクションクラスを使うことが圧倒的に多いけど、それでもいまだ配列を使いたいシチュエーションは少なからずある。 というわけで、配列を初期化する方法を覚え書き。 // S […]
時間が掛かる処理では進行況を表示して、かつ、処理を中断できるようにしたほうがいい。 以下、進行状況ダイアログを表示するサンプル。これをたたき台にして、ダイアログに進行状況を示すメッセージやプログレスバーなどを追加しよう。 […]
連想配列を使って英文中の単語の出現回数をカウントするサンプル。 Dictionary<string, int> dict = new Dictionary<string, int>(); stri […]
テキストファイルから英文を読み込んで単語に分割するサンプル。 string file = @"C:\Temp\test.txt"; using (StreamReader reader = new StreamReade […]
フォームに配置したテキストボックスに入力された文字列を数値に変換するような場合を想定。 以下に2つの方法を示す。何れの場合も変換できなければ例外が投げられるので、例外をキャッチしたらメッセージを表示してユーザに再入力を促 […]
以前にも同じ処理について書いたけど、MSDNを眺めていたら別の方法を見つけたので試してみる。 Bitmap.Clone メソッド (Rectangle, PixelFormat) (System.Drawing) htt […]
C#のプログラミングとは直接関係無い話だけど、EXIFデータを使った画像処理の必要がありネットでいろいろ調べてみたところ、記事によってJPEGだのEXIFだの用語の使い方がいい加減なので、自分なりに整理してみた。 JPE […]