PHPによるWebアプリケーションフレームワークであるCakePHPについて、実際にアプリを作りながらその詳細を見ていきます。
► 2020 (4) ► 9月 (1) ► 7月 (1) ► 6月 (1) ► 1月 (1) ► 2019 (3) ► 5月 (1) ► 3月 (1) ► 2月 (1) ► 2017 (4) ► 11月 (1) ► 9月 (1) ► 5月 (1) ► 4月 (1) ► 2016 (5) ► 11月 (1) ► 10月 (1) ► 9月 (1) ► 7月 (1) ► 3月 (1) ► 2015 (2) ► 10月 (1) ► 7月 (1) ► 2014 (1) ► 8月 (1) ► 2013 (2) ► 12月 (1) ► 8月 (1) ► 2012 (11) ► 12月 (2) ► 10月 (1) ► 6月 (2) ► 5月 (1) ► 4月 (3) ► 3月 (1) ► 1月 (1) ▼ 2011 (2) ► 10月 (1) ▼ 9月 (1) 9月10日PHPカンファレンス2011で講演
PHPの現行バーション(PHP5.3.6以前)には、ファイルアップロード時のファイル名がルート直下の場合、先頭のスラッシュを除去しないでファイル名が渡される問題があります。CVE-2011-2202として報告されています。 後述するように影響を受けるアプリケーションは少ないと思われますが、念のためアプリケーションの確認を推奨します。また、次バージョンPHP5.3.7のRC1で修正されていることを確認しましたので、PHP5.3.7正式版が公開され次第、できるだけ早期に導入することを推奨します。 ※このエントリは、http://blog.tokumaru.org/2011/06/PHP-file-upload-bug-CVE-2011-2202.html に移転しました。恐れ入りますが、続きは、そちらをご覧ください。
概要 ♪ このページでは、PHP で、GET/POSTメソッドによりブラウザからサーバーに 送信された日本語文字列データの文字化けを防止する対策について述べています。 HTML文書 でエンコーディング方法を指定する方法、ブラウザの対応状況、PHPの 文字エンコーディング検出関数である mb_detect_encoding() 関数 による誤検出の問題、mb_detect_encoding() 関数 の特性、について述べ、それらを踏まえて、文字化けを防止する方法を 示します。 △ HTML文書 でエンコーディングを指定する方法 ♪ ブラウザからWebサーバーへデータを送信する場合、HTML文書 に FORMタグ を入れ ておき、GETメソッドかPOSTメソッドを使い送信します。この際に使用する文字 エンコーディングは、FORMタグ の accept-charset属性 で指定することができま
ソースをダウンロードしたりマニュアルを読んだりバグ情報を検索したり、あるいはPEARやPECLのモジュールを調べたり…。PHPを使っている人なら誰もが一度は訪れているPHP本家サイト。 PHP Advent Calendar jp 2010、今日はphp.netのそれ以外の顔についてのおはなしです。 最新のドキュメント置き場 - docs.php.net PHP Documentation Groupが管理するサーバです。基本的にはwww.pnp.netのミラーですがマニュアルは6時間おきにリポジトリ上の最新版に更新されており、常に最新のドキュメントを読むことができます。が、最近は公式のマニュアルも毎週更新されるようになったので、あまりありがたみがないかもしれません…。 クロスリファレンス - lxr.php.net PHP本体のソースコードをブラウザ上で読むことができます。「あの関数の実
PHP Advent Calendar 「PHP Advent Calendar jp 2010 : ATND」11日目の担当です!よろしくお願いします。 昨日の担当は、fm1202さんで記事は「CURLよりfile_get_contents() – fm1202の日記」でした。 本題 さてさて、PHPマニュアルってよく不思議なキーワードが出てきますよね。 needle、heystack、mixed、foo、bar、などなど…。 これらはPHPに限らずプログラミング界隈の話ではよく出てくるのですが、それらの意味を知っているのと知っていないのとではマニュアルのの理解度も0.5割くらい変わってくると思います。 そんなわけでこの記事ではそれらの言葉をさらりと解説します。 さらりと解説 「foo」、「bar」は「メタ構文変数 – Wikipedia」と呼ばれる物です。日本語でいう「hoge」、「f
PinocoはPHP製のオープンソース・ソフトウェア。Webシステムの開発に最適な言語として知られるPHPだが、それでも最近では素のまま使うことは少なくなった。何らかのWebアプリケーションフレームワークと組み合わせることでより手軽にセキュアにシステムを構築できるようになっている。 空のプロジェクト そして大型のWebシステムになるとデザイナーと開発者の分業が必要になってくる。分業になるとビューとロジックの分離が必要になるが、今回はそれを可能にするフレームワークであるPinocoを紹介しよう。 Pinocoがユニークなのは、PHPファイルへの直接のアクセスが行われないということだ。Webアプリケーションは別な場所に格納し、ゲートウェイファイルが全てのアクセスを取り仕切る。静的ファイルがある場合はそちらが優先されるので、画像やHTMLファイルなどは自由に配置できる。 コード例。$thisに変
PHPクックブックソースコードリンク集 このページは「PHPクックブック(第1版)」に記述されているソースコードを簡単に参照できるようにするために作成したリンク集です。ネットワーク上に存在するPHPクックブック(英語)のリソースに対してリンクを設定しています。 PHPクックブックは日本語訳は未出版(第1版、第2版とも)です。このページには日本語訳や日本語の解説はありません。念のため。 なお、誤訳などの問題は掲示板に一筆書いていただけると助かります。 著作権 序文 Chapter 1: 文字列 1.1 はじめに 1.2 部分文字列にアクセスする 1.3 文字列のある部分を置換する 1.4 文字列を1文字ずつ処理する 1.5 単語あるいは文字単位で文字列を反転する 1.6 タブ文字と空白文字を相互に変換する 1.7 文字列の大文字・小文字を変換する 1.8 文字列を展開・組み立てして新たな文字
■ mb_convert_encoding 関数の ISO-2022-JP と JIS の違い mb_convert_encoding() 関数でエンコーディングを指定する際、 ISO-2022-JP と JIS では意味が違うというのはご存知でしょうか? PHP のソースコード (mbfilter_jis.c) を見てみると、 それぞれのエンコーディングが対応する文字種は、次のようになっています。 ISO-2022-JP ASCII JIS X 0201 ラテン文字 JIS X 0208 JIS ASCII JIS X 0201 ラテン文字 JIS X 0201 半角カナ JIS X 0208 JIS X 0212 要するに、JIS は半角カナに対応していますが、ISO-2022-JP は対応していません。 そのため、半角カナのメールを扱うという無茶なことをやりたい時には、 ISO-20
アメリカ時間の昼ごろにTwitter上が一つのニュースで埋め尽くされました。 PHPをC++に変換して高速化する技術をFacebookが公開したというものです。世界中のPHPハッカーが注目する興味深いリリースという事でちょっと長いですが、リリースノートの和訳を行いました。 原文 http://developers.facebook.com/news.php?blog=1&story=358 Facebookにおいて重要なことのひとつが動作の速さです。過去6年間にわたって、PHPが提供する高速な開発ペースによって多くを成し遂げてきました。プログラミング言語としてみると、PHPはシンプルです。簡単に習得し、簡単に書き、簡単に読み、簡単にデバッグする事ができます。我々は他の言語よりも早くエンジニアを獲得し、それによってより早いイノベーションをすることができます。 今日、私は2年に渡って作業して
http://github.com/anatoo/Blanka タイトルはここからインスパイアされた。 最近PHP5.3で動く新しいウェブアプリケーションフレームワーク作っている。 まだ一度もリリースしていないが以下その概要について箇条書きとサンプルコードを少し書く。 PHP5.3以上で動く コントローラ = コールバック コントローラを作るのに必ずしもクラスを書く必要がなく、匿名関数でもよい hello worldのコード <?php include_once '/path/to/Blanka.php'; Blanka::app()->respond(function($b) { return 'hello world'; }); コントローラの最初の引数には必ずBlankaオブジェクトが渡される。 Blankaオブジェクトは、リクエストを得るためのメソッドや、レスポンスを返すメソッド、
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く