PHPカンファレンス関西 2016の資料です。 http://conference.kphpug.jp/2016/
PHPを愛する試みというものを個人的にやっている PHPを愛する試み PHPを愛する試み 〜調教編〜 今回は、self:: parent:: static:: 遅延静的束縛について図で整理してみた。 スコープ定義演算子 (::) まず「::」について。これはスコープ定義演算子という。マニュアルには以下のようにある。 スコープ定義演算子 (::) スコープ定義演算子 (またの名を Paamayim Nekudotayim)、 平たく言うと「ダブルコロン」は、トークンのひとつです。 static, 定数 およびオーバーライドされたクラスのプロパティやメソッドにアクセスすることができます。これらの要素をクラス定義の外から参照する際には、 クラスの名前を使用してください。PHP 5.3.0 以降では、変数を用いてクラスを参照することも可能です。 変数の値に (self や parent、 stat
さて、前回記事「PHPでメモリ上に一時ファイルを作る」では、file_get_contents関数でCSVファイル全体を取得して文字エンコーディングの変換を行い、変換結果に対してfgetcsv関数を利用しました。しかし、CSVファイルが巨大な場合にはfile_get_contentsを使うとメモリ上限に引っかかってPHPが停止してしまいます。 もちろん、UTF-8のCSVファイルに対してfgetcsvを利用するのであれば、どんな大きなCSVファイルだろうと処理することが可能です。なぜなら、fgetcsvはファイルを1行単位で読み込む関数ですから、1行分のメモリ消費だけでファイル全体を読み込み続けられるからです(正確にはストリーム上のデータはバッファリングされるので、バッファサイズ分のメモリは消費しますが)。 それでは、巨大なSJISのCSVファイルをfgetcsvで処理したい場合はどうすれ
Formヘルパーで、日時選択フォームの出力をカスタマイズする方法。 以下の参考サイト:dateTime()による指定方法をベースに、 input()による指定方法 および 月を英語以外で表示する方法 プルダウンの最初を空欄にする/しない方法 参考サイト CakePHP1.2 Form ヘルパーで日付のフォームを作る | Sun Limited Mt. $form->input('disp_date')の出力 以下の$options設定および追加CSSでカスタマイズした出力 echo $form->input('disp_date', array( 'label' => __('Date', true), 'default' => date('Y-m-d H:i', strtotime($this->data['Model']['disp_date'])), 'timeFormat' =>
ログイン認証出来る機能がほしかったのだが標準で実装されているACLって認証機能じゃなかったのね orz データベースなどのユーザーテーブル上のID/PWで認証できる機能を探していたところ、いろいろとモジュールが見つかり以下が参考になった。 CakePHPで自動ログインコンポーネント CakePHP::obAuthを使ったユーザ認証 とはいえ、個人で実装するにはいろいろと足りないところもあったりしたので、いいところを真似しつつ自作してみた。 それなりのレベルまで作れた感じな為公開してみることにした。不具合点などはご指摘下さい。 またご利用に際しては自己責任でお願いします。 使い方 コンポーネントとして動作。controllers/components にauth.phpとして配置。 まずはコンポーネントを利用するためにコントローラのはじめに以下のように設定 var $components =
PHPとか連想とかまさか、こんな開設したばかりのブログにコメントをいただけるとは思ってもみなかったので、俄然やる気が出てきた。 ということで、さっそく管理画面の開発にとりかかる。 CMSに管理画面は必須ではないけれど、今回作りたいCMSは、表側で公開する内容をすべて裏側(管理画面)で管理(登録、編集、削除)することを前提に考えているので、まずはやることが多い管理画面から作っていきたいと思う。 管理画面と言えば、一般の方に見られないように管理者の認証を用意する必要がある。 BASIC認証で済ますのはなんなので、ログイン画面を作ってみたいと思う。 参考にさせていただいたのは、下記のページ。 【CakePHP】AuthComponentについてのまとめ 【ざっくり基本編】 http://blog.ne2ma2.com/archives/160 【CakePHP】AuthComponentにつ
今回もPaypalシリーズの続きです。前回まではこれらのエントリーをご参照ください。 Paypalを使った「今すぐ購入」ボタンの作り方 Paypal「PDT」「IPN」を使った決済とバックエンドの統合(1) さて、前回まででPaypalを利用した場合の自サイトとPaypalサイトとのデータの流れについて、概略を説明しました。今回はその中でPDT、IPNを実際に実装する際の注意点についてまとめておきたいと思います。今回の話は、主に次のPDFファイルの内容を重要な点だけまとめ直して、ハマった点を追記したものなので、あわせて読まれることをお勧めします。 注文管理インテグレーションガイド Sandbox ユーザーガイド Sandbox いきなり本物のクレジットカード情報でやりとりをするわけにはいかないので、閉じられたテスト環境内でまずは実験を行うことになります。Paypalは、このテスト環境を提供
Warning: Cannot modify header information - headers already sent by (output started at /home/blog1602/blogs/inc/_blog_main.inc.php:482) in /home/blog1602/public_html/hanaya/skins_custom/_main.php on line 65 今回は、ログイン機能を作りたいと思います。 「app_controller」の記述 「app_controller」の「beforeFilter()」に記述すると、すべてのコントローラーの全アクション前に実行されます。 <?php class AppController extends Controller { // ログインを必須とするかどうかのフラグ var $needAuth
[追記1] 最後で説明しているproxy cacheの設定を修正しました。 [追記2] nginx proxy cacheでキャッシュしない場合の処理を変更しました。 [追記3] スマートフォンや携帯で閲覧した時にキャッシュしない設定を追加しました。 はじめに 大げさな題名ですが、今回はWordPress単体を速くするのではなく、データベースやWebサーバなどの調整、またnginxのproxy cache機能を使って速くする話になります。 サイトの構成によっては、proxy cacheは使えないかもしれませんが、使わなくても5倍程度速くすることはできましたので、参考にしていただければと思います。 今回行うチューニング一覧 DBを最適化するプラグインを導入する APCを導入してPHPを速くする MySQLを速くする 重いWordPressプラグインを外す nginx+FastCGIにする W
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く