初めてのシステムと日記

システムも日記も初めてです。

PHP

ChefでApahceとPHPをソースインストールするレシピを書いてみた

■さくらVPSにChefをインストール - 初めてのシステムと日記 http://bosssato.hatenablog.com/entry/2013/06/23/135552 前回の記事でさくらVPSにChefをインストールしました。 今回はChefを使ってApache、PHPをソースインストールするレシピを書いて実際にイ…

メール受信でPHPを起動

Postfixにて、メール受信をトリガーにしてPHPを起動させる設定についてです。 よくある、空メールを送信して登録画面のURLを発行するなどのあれの設定です。 ■エイリアスを有効にする メール受信をトリガーとしてプログラムを起動させる、 また今回はやりま…

タイムアウト回避策

PHP

PHPでは標準で以下のような場合、処理を中断します。 ブラウザとの接続が切れた場合(ブラウザの「中止」ボタンが押された場合や閉じられた場合) ブラウザからのリクエストがあってから、30秒以上経過 しかし、CSVファイルの吐き出しなどで処理を中断させた…

ファイルの書き込み、更新確認

PHP

PHPで定期的にあるファイルを取得し、前回更新分のファイルfile_old.txtと今回更新分のファイルfile.txtで差分を見て更新があったかどうかを確認することを試す。 //ファイル取得 $file = file_get_contents([file_path]) if (!$file) { return false; } //…

array_key_exists

PHP

array_key_exists($key, array $search)指定したキーまたは添字が配列にあるかどうかを調べる。key:調べる値search:キーが存在するかどうか調べたい配列 以下のような、GETで指定したパラメーターのみ取得する処理で使いました。 //パラメーターの指定 $list…

安定版以外のパッケージインストール

先日試したImage_3Dをインストールしようとしたら下記のようなエラーが発生。 # pear install Image_3D Failed to download pear/Image_3D within preferred state "stable", latest release is version 0.4.1, stability "alpha", use "channel://pear.php.…

Image_3D

PHPで3Dを作成するライブラリを探していたら、PEAR::Image_3Dというものがあったので試してみました。※参照ブログhttp://blog.asial.co.jp/257 setColor(new Image_3D_Color(250, 250, 250)); //ライティング生成 //第2引数はライティングの座標 $light = $w…

エラー制御演算子

PHP

PHPの関数などの前に@(アットマーク)をつけると、その関数などで生成されたエラーメッセージを無視、非表示にできる。

preg_quote

PHP

正規表現での特殊文字の前にバックスラッシュを挿入してくれる。(エスケープ処理してくれる)第2引数に文字を指定すれば、その文字もエスケープ処理をしてくれる。

md5

PHP

引数で指定した文字列を32文字のハッシュにして返す。 パスワードのハッシュとかに便利。

数値のチェック

PHP

preg_match('/^[0-9]+$/', $hogehoge)今まで10進整数値のチェックにis_numeric関数を使ってました。 数値または数値形式の文字列である場合にTRUE、それ以外の場合にFALSEを返す。 ただこの関数だと以下の文字列もTRUEを返してしまいます。 * 0xabcd * 12.34…

if文を一行で書く

PHP

$test = ( $name == "hogehoge" ) ? 1 : 0; ※追記上記はif文を一行で書くとかではなく三項演算子を使ったものでした。。 ■三項演算子?、:を使った条件演算子 //三項演算子の例 $test = ( $name == "hogehoge" ) ? 1 : 0; //上記は以下のif文と同じ if($name=…