読者です 読者をやめる 読者になる 読者になる

k-holyのPHPとか諸々メモ

Webで働くk-holyがPHP(スクリプト言語)とか諸々のことをメモしていきます。ソースコードはだいたいWindowsで動かしてます。

Apache2.2.20でBasic認証しまくったら警告を吐いて止まらなくなった話

今時Basic認証かよ、などと思われそうですが、むしろ今時HTTPSでない認証はあり得ないので、明示的なログアウト/再ログインが必要のないケースであればBasic認証で問題ないんじゃないかというわけで。 非ブラウザのHTTPクライアントアプリケーションと連携し…

SilexでUrlGeneratorを使ったサブディレクトリ運用でサブリクエスト

相変わらずSilexとPimpleを拡張した自作フレームワークを行ったり来たりしています。 SilexアプリケーションでUrlGeneratorを使ったサブディレクトリ運用への対応(たとえば http://example.com/foo/ 以下をアプリケーションのルートとする)で、コントロー…

SqaleのPHPアプリケーションでSilexのサービスプロバイダ用Traitを使ってみたメモ

クラウドホスティングサービス Sqale では国内ホスティングサービスとしては珍しく(?)、動作環境にPHP5.4を選択できます。 せっかくなので、以前に書いたSilexアプリケーションのコードをSilex付属のサービスプロバイダ用Traitを利用したものに書き換える…

マイクロフレームワークをつくろう - Pimpleの上に(Pimple拡張編)

DIコンテナの効能が謳われだして久しい昨今、業務でもSilexでいくつか小さなアプリケーションを作ったりする中で、ようやくその利点を実感するようになりました。 そのうち、実は自分が惚れたのはSilexではなくて、その母体たるPimpleだったんじゃないかと考…

SqaleのPHPアプリケーションでSwiftMailerを使ってメール送信してみたメモ

SqaleでPHPアプリケーションを動かす記事の続きです。 最近、メールサーバを導入していない環境でメールを送信するため、Symfony系フレームワークで標準採用されているライブラリ swiftmailer を扱う機会がありました。 Sqale のアプリケーション環境におい…

SqaleのPHPアプリケーションでSilexを動かしてみたメモ

私のような真性PHPerは指を咥えて見ているしかなかったクラウドPaaS Sqale ですが、PHPに対応されたとの嬉しい知らせがありました。 SqaleでPHPアプリケーションも利用可能になりました! | Sqale Information 更に、このタイミングでアプリケーション1個が…

Volcanus_CsvとSymfony-FinderでローテートされたApacheログをLTSVフォーマットに集約してみる

CSVファイルの入出力用ライブラリ Volcanus_Csv を使ったシリーズ記事です。 話題の LTSV を扱ってみようと思い立ったものの、お世話になっているレンタルサーバGehirn RS2ではApacheのログフォーマット変更は難しい…。 そんなわけで、ローテート済みのcombi…

Silexアプリケーションをサブディレクトリで運用する(mod_rewriteとUrlGenerator)

Advent Calendar 用のサンプルコードを書くに当たって、Silexアプリケーションをサブディレクトリで運用したメモです。 なお、例のごとくサンプルコードではテンプレートエンジンにSmartyを使っています。 Apache + mod_rewrite で解決 Apache + mod_rewrite…

Silex + Volcanus_Csv + PDO_SQLiteユーザー定義関数で KEN_ALL.CSV と戦う(準備編)

CSVファイルの入出力用ライブラリ Volcanus_Csv を使ったシリーズ記事 CSVファイルの入出力処理用ライブラリ Volcanus_Csv を公開しました SilexでVolcanus_CsvとStreamedResponseを使ってCSV出力・Content-Dispositionヘッダの設定方法いろいろ Silex + PDO…

Silex + PDO + Volcanus_CsvでSQLiteに郵便番号データを取り込んでみた

先日、CSVファイルの入出力用ライブラリ Volcanus_Csv を公開しました。CSV処理クラスを作成した者の宿命として、まずは全国の郵便番号データ…悪名高き「ken_all.csv」と戦ってみるつもりでいたのですが…。どうやら全国多数のプログラマ達の怨嗟の声を受け z…

SilexでVolcanus_CsvとStreamedResponseを使ってCSV出力・Content-Dispositionヘッダの設定方法いろいろ

先日公開したCSV入出力用ライブラリ Volcanus_Csv ですが、実際に使わないと改善点も見えてこないので、あれこれやってみます。今回は Silex で Volcanus_Csv のレスポンス出力を利用せず、通常のコントローラと同様に Response オブジェクトを利用してみま…

CSVファイルの入出力処理用ライブラリ Volcanus_Csv を公開しました

CSV形式ファイルの入出力処理を簡潔に行うためのPHPクラスライブラリ Volcanus_Csv を公開しました。データベースから取得したデータのCSV形式でのエクスポートや、CSV形式ファイルからのデータベースへのインポートにおいて、簡潔かつ柔軟に対応できること…

Gehirn (ゲヒルン) RS2を使ってみたメモ その2 Silex + MySQL

Gehirn (ゲヒルン) RS2を使ってみたけどPharファイルが使えないと思ったら使えるようになった件 の続き。 今回はSilexからMySQLを使ってみます。事前準備として、Gehirn WebServices ControlPanel にてデータベースを作成する必要があります。 コントロール…

Silex + OptionsResolver で FizzBuzz パラメータ編

Silex + OptionsResolver で FizzBuzz の続きです。前回のサンプルだとSilex使っている意味がないので、パスで指定された値を使ってFizzBuzzを実行するよう、エントリスクリプトを書き換えました。"/{var}/{type}" という2つのパラメータを含んだパスへのGET…

Silex + OptionsResolver で FizzBuzz

Symfony2.1からOptionsResolverというコンポーネントが追加されましたが、連想配列によるオプション引数を扱うのに便利そうなので、こちらの記事を参考に試してみました。OptionsResolver を使って FizzBuzz 問題に取り組む - Sarabande.jpついでに、長い間…

Silex製アプリケーションをSlimフレームワークで書き換えてみた

系図管理システム(仮)というものをSilex + SQLiteで作成していたんですが、SlimというSilex同様のREST APIを提供するマイクロフレームワークに書き換えてみました。 (SilexでもDoctrine2ではなくRedbean、TwigではなくPHPTALを使ってたので、フレームワー…