[PHP] PHPによるPNGの生成 (GD)[PHP] PHPによるPNGの生成 (GD)
オフスクリーンで画像をレンダリングするニーズあり。 GDを使えば大抵のことはできそう。まずはマニュアルからサンプルをコピペして動かす。 <?php header("Content-type: image/png") […]
オフスクリーンで画像をレンダリングするニーズあり。 GDを使えば大抵のことはできそう。まずはマニュアルからサンプルをコピペして動かす。 <?php header("Content-type: image/png") […]
PHPのコーディングにNetBeansがあまりに重いので、ふと思い立ってVisual Studio Codeをダウンロード。メモリ消費がNetBeansは350MBに対して、Visual Studio Codeは83MB […]
最近のPHPの変化はめざましい。キャッチアップするべく覚え書きリンク。 PHP 5.3: 新機能 – Manual http://php.net/manual/ja/migration53.new-featu […]
どんぴしゃりの関数がある。 PHP: md5_file – Manual http://php.net/manual/ja/function.md5-file.php PHP: hash_file ̵ […]
メールアドレスの適正性は正規表現でするものと思っていたけど、PHPのフィルタ関数を使って簡単にできるようになっていたので覚え書き。 PHP: Filter – Manual http://php.net/ma […]
とりあえず二案。 投稿時刻と投稿者IPをサーバー側で記録しておき、以後の投稿時に比較する。 確実な方法だけど実装の手間はある。 投稿時に有効期限月クッキーを生成し、以後の投稿時にクッキーが存在するかチェックする。 簡易的 […]
メールフォームのセキュリティについて、メールヘッダインジェクション対策に関する覚え書き。 メールヘッダインジェクションとは フォーム入力値によって意図しないメール送信を許してしまう脆弱性。フォーム入力値を使ってメールヘッ […]
メールフォームのセキュリティについて、CSRF対策に関する覚え書き。 CSRF (Cross Site Request Forgeries) とは 超簡単に言うと「自サイトのフォームを他サイトからキックされる」こと。これ […]
PHPにrange()という関数があるのを知らなかった。使い方によっては forループ同等の挙動をさせたり、文字シーケンスを操作することができそう。 PHP: range – Manual http://ph […]
フェイクデータを生成するPHPライブラリ。PHP 5.3.3以降。 fzaninotto/Faker · GitHub https://github.com/fzaninotto/Faker インストール compose […]
再利用しそうなスニペット覚え書き。 function deleteFiles($dir, $prefix) { if ($dh = opendir($dir)) { while (($file = readdir($dh […]
unlink関数を使ってファイルを削除する場合、プラットフォームにもよると思うけど、関数を呼び出してから実際にファイルが削除されるまでにタイムラグがある。確実にファイルが削除されてから以降の処理を行いたい場合には、ファイ […]
サーバー上のファイルのフルパスが与えられたときに、必要な情報を抽出するのに役立つ関数の覚え書き。 pathinfo関数 <?php $path_parts = pathinfo('/www/htdocs/inc/l […]
テスト初心者の自分があちこちのサイトを参考にしながらテストを書いていると、「スタバ」とか「モック」という言葉に頻繁に出くわす。以前PHPUnitの勉強をしたときに見た覚えがあるものの、記憶が怪しいので再勉強。 スタブとモ […]
ローカルのXAMPP環境でMySQLのdatetime型カラムにNOW()で現在時刻を書き込むと、ローカル時刻からズレた日時が保存された。タイムゾーンが適切に設定されていないらしい。というか、インストール時のデフォルトの […]
PDOで「出来ると思ってやってみたら実は出来なかった」ことがあったので覚え書き。 やろうとしたのはカラム名への変数のバインド。以下サンプル。 $sort = 'name'; $sth = $dbh->prepare […]
サンプルコードを書いて挙動を確かめてみた。 サンプルコード $dsn = "mysql:host=localhost;dbname=pdo_test"; $username = "pdo_test"; $password […]
きちんと理解するためにサンプルコードを書いて挙動を確かめてみた。 サンプルコード // クラス定義 class Post { var $id; var $title; }; // テストプログラム $dsn = "mys […]
PDO::fetch()でクラスをフェッチする場合の注意点。クラスのコンストラクタでインスタンスの初期化処理(たとえばメンバー処理の初期化など)をしている場合には注意が必要。 $stmt->setFetchMode […]
PHP開発エンジニア必読!最低限必要なセキュリティ対策 | Web制作会社スタイル http://www.hp-stylelink.com/news/2013/09/20130913.php 今夜こそわかる安全なSQLの […]