joppot

コピペで絶対動く。説明を妥協しない

プログラミング

MAMP2.2上でのPHP5.3.27のpearの使い方と動作確認

投稿日:2014年3月13日 更新日:


KC_IMG_3823

概要

みなさんこんにちはcandleです。今回はMAMPのpearの使い方と動作確認です。

pearというのはphpのライブラリ群の様なもので、便利なライブラリがそろっています。
中にはなぜ、これがphp標準で入っていないのか疑問になるようなハイスペックなライブラリもあり、ぜひ使っていただきたい代物です。

前提

  1. MAMPがインストールされている
  2. ある程度のUnixの知識がある

pearの実行ファイルを確認する

まずはMAMPを立ち上げましょう。

MAMP

かつては、MAMPのpearにはバグがありました。

pear.confファイルを編集したり、削除したりする必要がありました。

最新版のMAMP2.2ではpear.confやphp.iniを編集したりする必要なく、使える様になっています。

ターミナルを開いて、下のパスに移動しましょう。

cd /Applications/MAMP/bin/php/php5.3.27/bin

このディレクトリの中身を確認します。

ls ./

bin_—_bash

pearという実行ファイルがあります。

pearにインストールされているライブラリを確認する

pearではあらかじめいくつかのライブラリが既にインストールされています。
pearを実行してみましょう。

./pear list

現在、pearにインストールされているライブラリが見れます。

bin_—_bash 2

pearでライブラリをインストールする

pearでライブラリをインストールしていきましょう。
沢山のライブラリがあるのですが、有名なDBというライブラリをインストールしてみましょう。
pearでのライブラリのインストールの仕方は一般に次の書き方をします。

sudo ./pear install ライブラリ名

DBライブラリをインストールするにはこれです。

sudo ./pear install DB

bin_—_bash 3

install okというのが出たら成功です。

ちなみ、これはMAMP2.2のPHPが5.3.27でうまくいく事例です。
過去のバージョンだと、失敗したりしました。

ライブラリの動作確認

DBライブラリが読み込めているかどうかつまり、MAMPのPHPとPEARのライブラリのパスがちゃんと通っているか確認します。

確認の仕方は簡単です。

MAMPのhtdocsディレクトリの中に適当なファイルを用意します。

私はcheckpear.phpにしました。

touch checkpear.php

htdocs_—_bash

checkpear.phpを編集します。適当なエディタでひらいてください。
私はいつもemacsを使います。

emacs checkpear.php

checkpear.phpに次の文章を加えます。

<?php

require_once('DB.php');

echo “ok”;

?>

htdocs_—_emacs

保存してましょう。

上のソースコードはDB.phpがちゃんとインクルードできるかどうかを表しています。

もしも、pearとMAMPとphpがうまく設定されていない場合は DB.phpの読み込みに失敗して、echo “ok”の文字が表示されません。

つまり、okの文字が出力されたら、DB.phpを読み込めている事になります。

ブラウザで確認する

ブラウザを開いて、作成したpearcheck.phpを見てみましょう。

下のURLに移動します。

http://localhost:8888/checkpear.php

localhost_8888_checkpear_php

どうでしょうか?
okという文字がでたでしょうか?
表示されれば、今後MAMP上でpearを使用できます。

ただ、okと表示されない場合はphp.iniやpear.confを編集する必要がでてきます。

まとめ

実は、この記事を書く目的は、MAMPで簡単にはpearが使えないから、pear.confやphp.iniを編集して、使える様にするのが目的でした。しかし、最新版のMAMPではそれらば修正されたらしく、そのまんま使えました。

もしも、バグで動かないからこの記事を参照してくださった方には申し訳ない。

スポンサードリンク

「為になったなぁ」と思ったら、シェアお願いします。

-プログラミング
-, ,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

pythonのfabricでファイルを分割しfabfileに読み込む方法

概要 皆さんこんにちはcandleです。今回はfabricで分割したpythonファイルを読み込んでみましょう。 fabricはfabfile.pyというファイルに実行したいコマンドを書くのですが、 …

ruby on railsに最強のwysiwygエディタ、Squireを導入する

概要 みなさんこんにちはcandleです。今回はruby on railsにsquire editorを導入したいと思います。 squireはオープンソースの便利なwysiwygエディタです。 カスタ …

railsのgonで別ページでリロード後turbolinksで移動したら変数がundefindする場合の対処

概要 (追記 2016/05/18 この方法を行うと、turbolinksで問題が起きました。 turbolinksで移動した回数だけ、javascriptが実行されてしまいました。 例えば、 < % ...

railsのscaffoldでremote formを使ってフォームの送信をajax化する

概要 みなさんこんにちはcandleです。 今回はrailsのformをremoteを使ってajaxしたいとおもいます。 正直、解説するまでもなく簡単です。 前提 適当なrailsプロジェクトが存在す …

railsのform_forとstrong parametersを使用して画像をアップロードする

概要 みなさんこんにちはcandleです。今回はrailsのform_forを使って、railsプロジェクトのpublicディレクトリに画像をアップロードしてみましょう。 form_forは基本的にデ …

  • English
  • 日本語

ベンチャー企業のCTOをやってます。大学時代にプログラミングを始め、javaから入門し、C++へて、PHPへと進み、会社ではRailsを使用。自動化が大好きなプログラマー