PEAR をインストールできない環境で MDB2 を使う方法

PEAR をインストールできない環境なんて無いんですが、なるべくサーバーにインストールして使うっていうのを避けたかったので、試行錯誤してやりました。もう PEAR と仲良くなれたハズです。

今回は以下のページを参考にしました。
PEAR::MDB2のページ – テテのweb開発メモ – livedoor Wiki(ウィキ)

PEAR を用意する

以下のページから PEAR をダウンロードします。
PEAR のダウンロードページ

その後、ドキュメントルートでもどこでも良いので、任意のディレクトリに PEAR というディレクトリを作って、その中に展開したフォルダの中の PEAR.php とかが入った階層のファイルすべてを突っ込みます。

MDB2 を用意する

以下のページから MDB2 をダウンロードします。
MDB2 のダウンロードページ

展開したフォルダの中の MDB2.php と MDB2 を PEAR ディレクトリに全部突っ込みたい。

MDB2_Driver_mysql を用意する

以下のページから MDB2_Driver_mysql をダウンロードします。
MDB2_Driver_mysql のダウンロードページ

展開したフォルダの中の MDB2 ディレクトリすべてを先ほどの MDB2 ディレクトリすべてに大して上書き保存します。マージでも良いのかな。試しに私はマージにしました。

MDB2 を試してみる

PEAR フォルダを作ったディレクトリに以下のファイルを設置します。
ちなみに、以下は WordPress のデータベースから記事一覧をすべて出力するコードなので、適宜変更してください。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<?php 
ini_set('display_errors', "1");
error_reporting(E_ALL & ~E_DEPRECATED);
 
echo 'start<br>';
 
require("PEAR/MDB2.php");
 
//DSN 
$dsn = "mysql://user:password@localhost/dbname?charset=utf8"; 
 
//接続 
$mdb2 =& MDB2::factory($dsn); 
 
//フェッチモード設定 
$mdb2->setFetchMode(MDB2_FETCHMODE_ASSOC); 
 
//SQL文発行 
$sqlStr = "SELECT * FROM wp_posts"; 
$res = $mdb2->queryAll($sqlStr);
 
//結果を表示 
foreach ($res as $obj) { 
    print $obj["id"];
    print '	';
    print $obj["post_title"];
    print '<br>';
} 
 
//クローズ 
$mdb2->disconnect(); 
 
echo 'end';
?>

出力結果

以下のように出力されました。

4000 WordPress で特定のカテゴリの記事をリストで一覧にするコード
4002 WordPress でカレンダーを出力するタグ
4006 WordPress のページでどれだけ深い階層からでも最上階の親ページのスラッグとタイトルを取得するコード
4004 WordPress の the_excerpt() で記事の抜粋と続きを読むリンクを出力させる方法
4013 WordPress でカテゴリのタイトルやスラッグを取得する方法
4015 制作効率を高めるには寝る前にスケジュールを立てよう
4019 PHP ファイルが文字化けてしまう場合は .htaccess で文字コードを UTF8 にする
4023 UTF-8 で半角・全角を数えるには一度 Shift-JIS に変換から行う
4025 WordPress のページテンプレートの情報を取得する方法
4034 WordPress の $post の中身・内容を調べてみよう
4036 Amazon に商品を返品したけど返金してもらえなかった(前編)
4041 MySQL の LIKE 演算子で濁音・半濁音を区別して検索する方法
4044 Amazon で商品を返品する際にメーカー既成の梱包は絶対に開封してはいけない

MDB2 以外の PEAR ライブラリについても同じような感覚でできそうです。

コメント

コメントは受け付けていません。