運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します。個別にライセンスが設定されている記事等はそのライセンスに従います。
![実例で学ぶPHP拡張モジュールの作り方 記事一覧 | gihyo.jp](https://cdn-ak-scissors.b.st-hatena.com/image/square/7241c583676d54fc052c4388a6edd25e4c7f280b/height=288;version=1;width=512/https%3A%2F%2Fgihyo.jp%2Fassets%2Fimages%2Fgihyojp-ogp.png)
session_handler作ってますか? セッションをファイル以外に格納するとき使いますね。 例えば、セッションをデータベースとか、KVS等のセッションを格納するときとか。 ほとんどの場合は php で session_handlerをシコシコ作っていると思います。 が、phpでセッションハンドラーを作ると、パフォーマンス的にあれだったり、毎回作るのがめんどかったり、もっと高度なことをしたくなったりするヂャないですか。 Yes/Y それだったら、 pecl な PHP拡張として、C言語で書くしかないですよね。 pecl なセッションハンドラに対応している pecl 拡張の場合、、、 session.save_handler を定義してあげることで、簡単に導入できます。 //tokyo tyrant にセッションストアをしたい時、、、 ini_set('session.save_hand
ひぎぃっ 動作するサンプルのダウンロード プログラム 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 Extension でクラスを実装する方法を紹介します。 クラスと言えばオブジェクト指向によるプログラミングに欠かせないシステムであり、PHP にももちろんこの仕組みが用意されていることはご存じかと思います。 クラスを実装するにあたり、インスタンス、プロパティ、メソッドなどと言ったキーワードが登場してきますが、これらをどの様にして PHP Extension で実装していくかを見ていきましょう。 最初は PHP4 と PHP5 での PHP Extension の実装方法の違いなども紹介していくつもりだったのですが、PHP4 と PHP5 でクラスに関する仕様が大きく変わっており PHP Extension の実装方法もまた大きく異なっていることを知りました。残念ながら今回は PHP5 での実装方法に限定させた頂きます。 クラス設計 まず最初に今回どの様なクラスを作成するか
前回の Hello World のサンプルプログラムで一通りの PHP Extension の作成手順を見てきました。しかし helloworld() の様に引数も返値も無い関数だけではプログラミング言語として不便ですので今回は PHP と PHP Extension におけるデータタイプの詳細と引数、返値の渡し方について見ていきましょう。 PHP のコードから C言語で書かれたコードへとデータをやり取りする上で「型」についての疑問が浮かび上がります。動的形付けされた PHP の変数を静的に形付けされた C言語で扱うにはどうしたらよいのでしょうか。 まずは、PHP 内部でのデータ表現を知るために PHP のソースを覗いて見ましょう。 php-x.x.x/Zend/zend.h より typedef union _zvalue_value { long lval; /* long value
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
(追記) 2/16 23時 いくつかのライブラリを追記しました。 WEBサービスを作るなら最低限覚えておきたいPHPのPEARモジュールまとめ。 本家pearには560程のモジュールがあります(2011/2月現在)が、WEBサービスを作る上でよく使う物をまとめてみました。 これからPHPを使ってサービスを作ろうと思っている方は代替を使うことになると思うので参考にしてみて下さい。 php はインストール時点で既に多くの機能が備わっており、大体のことができてしまいますが、PEARを使うことで面倒なことがより簡単にできるようになります。 PEAR以外にも便利なライブラリはあるのですが、今回はあえて殆どをPEARサイトで公開されている物に絞ってご紹介します。 基本的なパッケージ まず、汎用に使える便利なパッケージのご紹介です。 HTTP_Request2 url を渡してリモートのテキストを取って
404 - ユメイサオスホトシサソツシ。」 ト昮ェイ鰈メオトラハヤエソノトワメムアサノセウ」ャメムク�クトテ﨤ニサ゚ヤンハアイサソノモテ。」
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く