どうもお久しぶりです。 データ容量やメモリ容量を抑える為に、ビットフラグで情報を管理するのは、常套手段ですよね。 PHPではenumがないので(OrbitEnumは非推奨ですしね)、defineかハッシュを使います。 すなわち、 <?php define("STATUS_01", 0x00000001); ///< ステータス1フラグ define("STATUS_02", 0x00000002); ///< ステータス2フラグ define("STATUS_03", 0x00000004); ///< ステータス3フラグ define("STATUS_04", 0x00000008); ///< ステータス4フラグ $status = 0; // ステータス1フラグを設定 $status |= STATUS_01; // ステータス2フラグを解除 $status &= ~STATUS_0
PHPでPDFを出力する場合、PDFlib や FPDF 、haru などさまざまなソリューションがありますが、たとえば、請求書や納品書といった、レイアウトが複雑なデザインの帳票を出力したいときには、 既存のPDFをテンプレートとして活用し、そこに必要な文字だけ配置していく ことでソースコードをシンプルに保つことができます。 既存のPDFをテンプレートとして読み込むことができ、かつ無償で活用できるライブラリとして、TCPDF と FPDI の組み合わせをご紹介します。 テンプレートとなるPDFを作成する PDFの読み込みを行うFPDIは、有償のパーサーを別途導入しない場合、PDF 1.5以上のファイルをパースすることができません。テンプレートとなるPDFファイルは PDF 1.4以下の圧縮形式で作成する必要があります。 また、PHP上から文字を配置する場合、座標を使用するため(左から10m
最近、はてブを眺めていたら、面白いツールを紹介されていましたので、早速CakePHPで使ってみた、というレポートです。 これは面白い!! 自分の組んだPHPプログラムが、本当に丸裸。どこがボトルネックになっているか、一目瞭然です。 というわけで、早速ですがCakePHPも、このツールで解析してみることにしましょう。 とりあえず簡単に手順をまとめておきます。 環境によって適用方法が異なると思いますので、その辺は良きに計らってください。 1:xprofのインストール xhprofはpeclのプロジェクトです。 peclツールを使って自動インストールすることも出来るみたいなのですが、当方の環境ではphpizeでエラーが出るため、マニュアルインストールしました。 ▼pecl : xhprof http://pecl.php.net/package/xhprof コンパイル及びインストール方法は次の
Warning: opendir(/dat/www/domains/www.monzen.org/sites/refdoc/tcpdf/latest/fonts.org) [function.opendir]: failed to open dir: No such file or directory in /dat/www/domains/www.monzen.org/sites/refdoc/tcpdf/index.phl on line 358 Warning: readdir() expects parameter 1 to be resource, boolean given in /dat/www/domains/www.monzen.org/sites/refdoc/tcpdf/index.phl on line 360 Warning: closedir() expects
phpize で共有 PECL 拡張モジュールをコンパイルする方法 時には pecl インストーラを使用するという選択肢が使えない場合もあります。 たとえばファイアウォールの内部で作業をしている場合がそうですし、 まだリリースされていない git 版のように PECL パッケージ形式になっていないものをインストールする場合も それにあてはまります。このようなモジュールをビルドする必要がある場合は、 より低レベルなビルドツールを使用して手動でビルドします。 PHP 拡張モジュールのビルド環境を準備するために、 phpize コマンドを使用します。以下の例では、 拡張モジュールのソースが extname というディレクトリにあると仮定します。 上手くいけば、extname.so が作成され、 それが PHP の 拡張モジュールディレクトリ に置かれます。 この拡張モジュールを使用する前に、ph
cd /tmp wget http://pecl.php.net/get/mongo-1.3.4.tgz --2013-02-26 19:44:13-- http://pecl.php.net/get/mongo-1.3.4.tgz pecl.php.net をDNSに問いあわせています... 76.75.200.106 pecl.php.net|76.75.200.106|:80 に接続しています... 接続しました。 HTTP による接続要求を送信しました、応答を待っています... 200 OK 長さ: 124844 (122K) [application/octet-stream] `mongo-1.3.4.tgz' に保存中 100%[===========================================================>] 124,844 102K
環境 OS:Ubuntu14.04 PHP:5.6.0 thinkpad T440p phpに後からモジュールを追加して有効したいときにはsourceファイルの下にextというディレクトリがあるのでそこにあるものをビルドして設定を有効にする php5.6のsourceは~/work/php-5.6.0にあるとする 追加例 mcrypt インストール手順 http://php.net/manual/ja/mcrypt.installation.php cd ~/work/php-5.6.0/ext/mcrypt phpize ./configure --with-mcrypt #php5.6のsourceコンパイル時につけてもいい configure: WARNING: You will need re2c 0.13.4 or later if you want to regenerate
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く