PHP5.5の新機能「ジェネレータ(Generator)」について、「それって何?」「どううれしいの?」「何に使えるの?」の3つを初心者向けに解説。動画 http://www.slideshare.net/kwatch/php55Read less
ようこそ 時代遅れの情報がウェブ上にあふれている。そんな情報を見たPHP初心者は戸惑ってしまうだろう。そして、まずい手法やまずいコードが広まってしまう。 そんなのはもうやめよう。PHP: The Right Way は気軽に読めるクイックリファレンスだ。PHPの一般的なコーディング規約、 ウェブ上のよくできたチュートリアルへのリンク、そして現時点でのベストプラクティスだと執筆者が考えていることをまとめた。 大事なのは、 PHPを使うための正式なお作法など存在しない ってこと。 このサイトの狙いは、はじめて PHP を使うことになった開発者に、いろんなトピックを紹介すること。 経験豊富なプロの人にとっても、これまで深く考えることなく使ってきた内容について、新鮮な見方を伝えられるだろう。 このサイトは、決して「どのツールを使えばいいのか」を教えるものじゃない。 いくつかの選択肢を示して、それぞ
ここ最近のPHP界隈では、興味深いニュースが続いています。最近PHPを追っかけていない人へ少しづつご紹介。 近頃、PHP界隈でホットなニュースを5つ、つまみぐいして見てみましょう。 1. PHP5.4.0-alphaリリース! PHPの次期バージョン、5.4.0-alphaがリリースされました。 まだ alpha1 ですが、すでに Traits や Array dereferencing support など様々な機能追加が行われています。 特に Traits は面白い機能で、いずれはこれを利用したフレームワークの登場が考えられます。ぜひ使ってみたい機能ですね。 今後、正式リリースに向けてさらなる新機能が追加されていくようなので、目が離せません。 PHP 5.4 alpha1 released 現状のPHP環境はそのままで、PHP 5.4 を試す PHP5.4 alpha1リリース! PH
今までPHPでは配列を書くのにarray()という記法を使う必要があったが、PHP5.4のリポジトリに新しい配列の文法が追加された。[]で囲むことで配列を表現することができるようになっている。連想配列についても同様。 add short array syntax as defined in https://wiki.php.net/rfc/shortsyntaxforarrays, 2nd solution using => only http://svn.php.net/viewvc?view=revision&revision=313641 以下、配列の新しい文法に関するテストケースを引用。 --TEST-- Testing array shortcut and bracket operator --FILE-- <?php $a = [1, 2, 3, 4, 5]; print_r(
7/9(土)にチューニンガソン というイベントに参加して優勝してきたので、その報告と、何を考えてどんなチューニングをしたのかを 記憶の範囲で公開したいと思います。 今回のチューニンガソンのお題は、WordPress(ja) + php + Apache + MySQL で、 ab を使って wp-comment.php 経由でコメントのポストをすることで計測が行われました。 MySQLとApacheを立ち上げたらWordPressが動く環境が渡され、そのWordPress自体は設定ファイルを含めて 改造が一切禁止、WordPressの実行をショートカットするチートも禁止です。 0. 試合前日 環境がAWSとAMI Linuxということは事前に公開されていたため、前日にAWSに登録して少しだけAMI Linuxを 触ってみました。yumベースだけどCentOSと違って結構新しいバージョンが用
HTTPレスポンスをajaxでストリーミング的に受け取りたいとき、要するにHTTPストリーミングをしたい時には、Transfer-Encoding: chunkedなレスポンスを生成してやるとよい。こうするとAjaxではHTTPレスポンス全体を受け取るのを待たずに、レスポンスの中身にアクセスすることが出来るようになる。従って、一つのHTTPコネクションでサーバ側から任意のデータを好きなタイミングでプッシュすることが出来る。 コード 一秒ごとに生成されるJSONをストリーム的に受け取るデモのコードが以下。 <?php // push.php function output_chunk($chunk) { echo sprintf("%x\r\n", strlen($chunk)); echo $chunk . "\r\n"; } header("Content-type: applicati
正式名称は『A HOWTO on Optimizing PHP with tips and methodologies』ですね。 PHPの最適化に関する文書です。 PHP4の時代に書かれたものですが、今でも通用する内容だと思います。 この週末を使ってコレを読んでたので、ついでに和訳しました。 かなり意訳&拙い翻訳ですが、何かしらのお役に立てればと思って載せます。 情報古かったり個人的に縁のない部分は省略したりしました。 ポロリもあるよ! —–ココから和訳—– やあ! こいつの最終更新日は2009年9月30日だよ! ベンチマークはちょっと古いかもしれないけど、一般的なアドバイスとしてはまだまだイケるんじゃないかな! 8年間やってきた中でいちばん需要なのはキャッシングだって気付いたからそこんとこは修正したよ。 まあ、squidとmemcacheについて付け加えたんだけどね。 変更事項について知
PHP 5.3.4のリリースは2010年12月にリリースされました。このリリースにはセキュリティ上重要な変更が追加されています。 Paths with NULL in them (foo\0bar.txt) are now considered as invalid. (Rasmus) パスに“foo\0bar.txt”などのようにNULLが含まれる場合は無効として処理される、とPHP 5.3.4のリリースノートには記載されています。PHP開発者の間でもあまり大きなニュースとして取り上げられていないので、この仕様変更をご存知でない方も多いと思います。2011年4月現在でもこの仕様変更はマニュアルには記載されていません。しかし、この修正はセキュリティ上非常に重要な意味を持っているので解説します。 仕様変更の必要性 PHP本体はC言語で記述されているため、ファイルを開く場合、最終的にはC言
面白いエントリを見つけたので和訳しました。PHPが使われていた歴史が古い事や開発者のコミュニティの観点から見たPHP論。読みやすいので早速どうぞ。 なお画像は「各プログラム言語からは各言語オタクがどう見えるか?」です。 原文 Why PHP Was a Ghetto http://codefury.net/2011/04/why-php-was-a-ghetto/ なぜPHPはゲットーだったのか ダンボ地区のかなりクールなスタートアップの創始者と私は世の中の多くのPHPの開発者でない人たちがPHPとその周囲のコミュニティを軽蔑するのかについて話していた。彼はとても興味深い点に言及した事が私の印象に残った。なぜなら私はこれまで聞いた事がない点だった。 お気づきかもしれないが、開発者がPHPに対して通常抱く不満は、だいたい以下の通りである: 醜い構文 他の言語が備えているいくつかの必要な
SWF の画像入れ替えやテキスト入れ替えに加えて、 (動きのある)シンボル入れ替えにも対応しました。 http://sourceforge.jp/projects/swfed/releases/ 入れ替えたいシンボルのインスタンス名と SWFデータを渡すと、 渡した SWF をシンボルに変換して差し替えます。 http://sourceforge.jp/projects/swfed/wiki/SWFEditor.replaceMovieClip まだ実験的なリリースです。今の所、 depth 重複避けとか根本的な処理が幾つか抜けています。 原理 インスタンス名からシンボルを検索する インスタンス名(name)を持つ PlaceObject2 タグを探す PlaceObject2 が character_id で指し示す Spriteタグを探す CID 重複避け テンプレートの SWF が使
When it comes to web development, most people wouldn't doubt PHP's best friend is Apache HTTPD Server. Having said that, developers who experienced any of web application frameworks of other scripting languages such as Ruby on Rails and Django may well find it cumbersome to set up httpd.conf just to use it within a development environment as those are most likely accompanied by a tiny web server t
はじめに 本連載では、PHP上で動作するアプリケーションフレームワークであるZend Frameworkについて紹介しています。今回は前回に続き、分散アプリケーション間でのデータのやりとりを行うための方法の一つである「メッセージキュー」を利用するためのZend_Queueコンポーネントを紹介します。 今回は、Zend_Queueのアダプタ(MemcacheqアダプタとPlatformJobQueueアダプタ)の紹介、次に自分でアダプタを作成する方法、そしてStompプロトコルを利用してメッセージキュー管理サーバにアクセスする方法について説明します。 対象読者 PHPの基本構文については一通り理解している方を対象としています。 必要な環境 Zend FrameworkはPHP 5.2.4以降とWebサーバがインストールされている環境で利用可能です。本稿ではWebサーバとしてApache 2.
今年のPHPカンファレンスジャパンで個人的に一番面白かったid:moriyoshiの発表に触発されてBoost.phpを試してみました。 試した環境 debian lenny githubからBoost.phpを取得する とりあえず最新版だけ欲しい人は--depthオプション使うとすぐダウンロードも終わります。moriyoshi/boost.php · GitHub $ git clone http://github.com/moriyoshi/boost.php.git Boostのソースコードを取得する 動作させるのにBoostが必要なのでダウンロードして適当な所に展開。パッケージに含まれるヘッダファイルだけ必要なのでビルドは不要。yumやaptでさっくり入れてもよいかと思います。 添付しているテストコードをビルドしてみる githubから落としたBoost.phpのコードにテストコー
Getting Started Introduction A simple tutorial Language Reference Basic syntax Types Variables Constants Expressions Operators Control Structures Functions Classes and Objects Namespaces Errors Exceptions Generators References Explained Predefined Variables Predefined Exceptions Predefined Interfaces and Classes Context options and parameters Supported Protocols and Wrappers Security Introduction
ひぎぃっ 動作するサンプルのダウンロード プログラム http://rtilabs.net/files/2011_02_13/mytest1.tar.gz 1.事前準備 必要なソフトウェアを適当に入れる。 何も考えずに実行。考えるな感じるんだ! yum -y install m4 autoconf automake libtool gcc php-devel 2.phpのソースをもってくる php のソースを適当にダウンロードして展開する. http://php.net/downloads.php wget http://www.php.net/get/php-5.3.5.tar.bz2/from/jp.php.net/mirror tar Ixvf php-5.3.5.tar.bz2 3.extディレクトリに移動 extディレクトリに移動する。 男の子は、だまって移動するものだ。 cd
PHP で汎用的なライブラリを作成するフレームワークには大きく分けて2種類あるようです。 ひとつは PEAR のように PHP でクラスライブラリを作る方法、もう一つが今回紹介する PECL の様に PHP 自体を拡張するモジュールを書く方法です。 なぜ PHP Extension ? ひとつは、過去に C で書かれた既存のライブラリを流用したい場合に PHP Extension を作成すれば自然に PHP のコードに結合することが出来ます。また、PEAR の様に PHP で書いたコードと比べると若干高速になります。 それでは実際に helloworld という名前の PHP Extension を作成してみましょう。PHP のソースを展開すると php-x.x.x/ext というディレクトリがありますので $ cd php-x.x.x/ext $ ./ext_skel --extname
こんにちは。メディア開発のよやです。 そろそろ SWF シリーズの記事は打ち止めにしようか迷っていましたが、暖かい励ましのメールを頂いたので、もう少し続きます。ご声援ありがとうございます。 今、作成中の Shape 編(ベクター画像)の記事が長くなりそうですので、一度、これまでの内容をおさらいします。 記事一覧 (第一回~第五回) 第一回 (SWF構造) 第二回 (SWF編集) 第三回 (JPEG編) 第四回 (Lossless - GIF編) 第五回 (Lossless - PNG編) 実は、記事を出した後でも図を追加したり文言も訂正を重ねています。ぱっと見で挫折した方も、もう一度読むと分かる記事があるかもしれません。 第一回から順に読むのを前提に記事を書いてしまったので、途中から読むと分かりにくい部分が多いと思います。後から古い記事を辿れるように、各記事のポイントを列挙します。 第一回
2月か3月のいずれかの日に Zend Engine 勉強会を開催します。 多くの PHPer は Zend といえば Zend Framework を想起されると 思いますが。PHP 処理系の方の Zend です。 PHP extension を開発してると Zend Engine の知識が必要になるんです。 第一回は東京の六本木ヒルズ予定です。 GREEさんの会議室が借りられそうなので。 きっかけ Twitter で @anatoo さんと拡張周りの勉強会あるといいよね。 http://twitter.com/anatoo/status/20293192477843456 って話をしてるうちに、その場のノリで開催する事になりました。 http://twitter.com/yoya/status/20301108803018754 この発言に100RTついたら、3カ月以内に要望のある 都市
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く