Pear/Smarty

個人法人共用マネージドVPS専用代理店

PearとSmartyについて、具体的な使用例などをご案内いたします。

Pearについて

「Pear」とは、PHP用のライブラリ集で、このライブラリを使うことにより、PHPアプリケーションの様々な機能が簡単に使用できます。

PHPについては以下のページをご覧ください。

弊社サービスの標準でご利用可能なPear
モジュール名従来のシリーズ新シリーズ(CentOS5系)新シリーズ(CentOS6系)
Archive_Tar
Auth_SASL
Auth_SASL2 ----
Cache_Lite
Console_Getopt
Console_GetoptPlus --
DB
HTML_Template_IT
HTTP_Request2 --
MDB2
Mail
Mail_Mime --
Net_SMTP
Net_Socket
Net_URL2 --
Net_UserAgent_Detect
PECL imagick --
Smarty
Structures_Graph
XML_Parser
XML_Parser2 --
XML_RPC ----
XML_RPC2 --
XML_Util

専用サーバー・マネージドVPSのお客様はPearのインストール代行を別途オプションで承っております。

Pear DB / MDB2 の利用方法

Pear DB / MDB2 を利用しますと、MySQLやPostgreSQLなどデータベースエンジンの違いを吸収した分かりやすいDB連携アプリケーションを構築することが出来ます。Pear DBをご利用する場合は、以下のようなPHPプログラムをご利用ください。

require 'DB.php'; // Pear DBの場合
require 'MDB2.php'; // Pear MDB2の場合
Pear DB / MDB2 の参考資料

Pear DB オンラインドキュメント(英語)(外部サイトへのリンク)

Pear MDB2 オンラインドキュメント(英語)(外部サイトへのリンク)

Smartyについて

「Smarty」とは、PHPスクリプトからデザイン部分を切り離してWebサイトの構築を行うための機能(テンプレートエンジン)です。Smartyを利用することで、PHPスクリプトとHTMLのデザインが分離されますので、見通しの良いWEBアプリケーションを構築することが可能です。

従来のシリーズ (コース名に「ビジネス」「パーソナル」が含まれない 2008年11月以前のコース)は、Smarty 3系は、インストールされておらず、Smarty 2系のみご利用可能です。

Smartyの利用方法

PHPプログラムに下記を記述して頂くことで、Smarty機能が有効となります。

require 'Smarty/libs/Smarty.class.php';    // Smarty 2系を利用する場合
require 'Smarty-3/libs/Smarty.class.php';    // Smarty 3系を利用する場合 (従来のシリーズは不可)

なお、Smarty が内部的に必要とする templates / configs / templates_c フォルダーにつきましては、以下の作成例をご参照の上、Smartyを呼び出すphpファイルの直下にお客様にて作成ください。

  • フォルダー作成例1 (FFFTP)
  • フォルダー作成例(FFFTP)
  • フォルダー作成例2 (FFFTP)
  • フォルダー作成例(FFFTP)
  • フォルダー作成例3 (FFFTP)
  • フォルダー作成例(FFFTP)

templates_cフォルダーについては、nobodyユーザーでの書き込み権限が必要 となりますので、属性(パーミッション)を 707 に変更してください。

  • 属性(パーミッション)作成例1 (FFFTP)
  • 属性(パーミッション)作成例(FFFTP)
  • 属性(パーミッション)作成例2 (FFFTP)
  • 属性(パーミッション)作成例(FFFTP)
Smartyの具体例

下記に具体的な使用例を記述させて頂きます。プログラムの記述方法につきましては、サポートの対象外となりますので、後述の 参考書籍などをご参照ください。

[Smarty2系を利用したPHPプログラム]

ファイル名:index.php

アップロード先:/www/
<?php require 'Smarty/libs/Smarty.class.php'; $smarty = new Smarty(); $smarty->assign('message','Hello, smarty!'); $smarty->display('index.tpl'); ?> [Smartyのテンプレートファイル]

ファイル名:index.tpl

アップロード先:/www/templates/
<html> <head> <title>テスト</title> <body> {$message} </body> </head> </html>
Smartyのお薦め参考情報

Smartyのマニュアル