PHP は広く使用されている汎用スクリプト言語であり、特に Web 開発に適しており、HTML に埋め込むことができます。 PHP は、Linux、FreeBSD、Ubuntu、Debian、Solaris などの Unix バリアントから、Windows や Mac OS X まで、すべての主要なオペレーティング システムで動作します。Apache、Nginx、OpenBSD サーバーなど、主要なすべての Web サーバーで使用できます。; Azure や Amazon などのクラウド環境も台頭しています。
以下は、PHP スクリプトをテストする方法の一部です。
単純な PHP スクリプトのテスト
1. 以下の内容でファイルを作成します。ファイルに myphpInfo.php のような名前を付けます:
<?php phpinfo(); ?>
2. ファイルを Web サーバーの DocumentRoot ディレクトリ (/var/www/html など) にコピーします。使用している Web サーバーとその構成によっては、DocumentRoot ディレクトリが異なる場合があります。
3. パーミッションを 755 に変更します (Linux のみ):
# chmod 755 myphpInfo.php
4. ブラウザからファイルを呼び出します:
http://Fully-Qualified-Hostname:PORT#/phpinfo.php
データベース接続を使用する PHP スクリプトのテスト
1. 以下の内容でファイルを作成します。ファイルに phpdbchk.php のような名前を付けます:
<html>
<head>
<title>PHP Database Connection Test</title>
</head>
<body>
<?php
$username = 'scott';
$password = 'password';
$database_hostname = 'host.domain';
$database_port = 'port';
$database_sid = 'sid';
$database_srvc = 'servicename';
$easy_connect_syntax = '//'.$database_hostname.':'.$database_port.'/'.$database_srvc;
// If Oracle 10g libraries are used by PHP try the new Easy Connect syntax.
// No long connection string is needed. No tnsnames.ora file is required.
// This does not work with standalone HTTP Server installations
// $conn = OCILogon($username, $password, $easy_connect_syntax);
// Use this line if TNS is setup properly in $ORACLE_HOME/network/admin
$conn = OCILogon($username, $password, $database_sid);
if (!$conn) {
$e = ocierror();
print htmlentities($e['message']);
exit;
}
$query = 'SELECT SYSDATE FROM DUAL';
$stmt = ociparse($conn, $query);
ociexecute($stmt, OCI_DEFAULT);
print 'Checking for the Date and Database Connectivity<br>';
$success = 0;
while (ocifetch($stmt)) {
print "Date: " . ociresult($stmt, "SYSDATE") . "<br>\n";
$success = 1;
}
if ($success) { print 'Success.<p>'; }
else { print 'Failed to retrieve the date.<p>\n'; }
OCILogoff($conn);
print 'PHP Configuration<br>';
print '======================<p>';
phpinfo();
?>
</body>
</html> 2. ORACLE_HOME と TNS_ADMIN を適切な値に設定します。
3. ファイルを DocumentRoot ディレクトリにコピーします。
4. テスト システムの変数 $username、$password、$database_hostname、$database_port、$database_sid、および $database_srvc を必要に応じて変更します
5. パーミッションを 755 に変更します (Linux のみ):
chmod 755 phpdbchk.php
6. ブラウザからファイルを呼び出します:
http://Fully-Qualified-Hostname:PORT#/phpdbchk.php
ORACLE_HOME\network\admin\tnsnames.ora が正しく設定されていないか、見つからない場合、次のエラーが発生します。欠落している場合は、データベースからコピーしてそのまま使用できます。
Warning: ocilogon(): _oci_open_server: ORA-12560: TNS:protocol adapter error in [oracle_home]\apache\apache\htdocs\phpdbchk.php on line 25 ORA-12560: TNS:protocol adapter error
htdocs 以外の別のディレクトリへの PHP スクリプトの実行
たとえば、php スクリプトを $ORACLE_HOME/Apache/Apache/phpsrc に配置し、そこからブラウザ経由で実行したい場合 (例:http:FQHN:[port]/php/info.php)、次のようにします:
1. $ORACLE_HOME/Apache/Apache/phpsrc ディレクトリを作成
2. info.php スクリプトを $ORACLE_HOME/Apache/Apache/phpsrc にコピーします
3. httpd.conf を編集して、次の行を追加します:
Alias /php/ $ORACLE_HOME/Apache/Apache/phpsrc
4. http サーバーを再起動すると、動作するはずです:
http:FQHN:[port]/php/info.php注意 :php スクリプト info.php が例として使用されました。php スクリプトには任意の名前を使用できます