「PHP5.6をインストールする」の版間の差分

提供: FreeBSD入門
移動: 案内検索
(ページの作成:「FreeBSD に PHP 5.6 に Apache 用の libphp5.so と php コマンドをインストールします。 __TOC__ == 概要 == Apache 用もlibphp5.so は、 mod_php...」)
 
行12: 行12:
  
 
== PHP 5.5 から PHP 5.6 へアップグレードする方法 ==
 
== PHP 5.5 から PHP 5.6 へアップグレードする方法 ==
PHP 5.5 が入ってる環境であれば、以下の方法でインストールします。
+
PHP 5.6 と PHP 5.5 は、別パッケージですので、PHP 5.5 が入ってる環境であれば、以下の方法でインストールします。
 
一度、php55系のパッケージを削除します。
 
一度、php55系のパッケージを削除します。
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
行19: 行19:
 
$ sudo pkg install `sed -e 's/-5.5.*$//' -e 's/php55/php56/' \
 
$ sudo pkg install `sed -e 's/-5.5.*$//' -e 's/php55/php56/' \
 
-e 's/extensions.*/extensions/' /tmp/php.txt `
 
-e 's/extensions.*/extensions/' /tmp/php.txt `
 +
</syntaxhighlight>
 +
 +
=== sqlite3 でエラーがおきる場合 ===
 +
sqlite3.so が libsqlite3.so.0 がありません、とエラーが出ている場合は、sqlite3 のパッケージをアップデートします。
 +
<syntaxhighlight lang="bash">
 +
$ php
 +
PHP Warning:  PHP Startup: Unable to load dynamic library
 +
'/usr/local/lib/php/20131226/sqlite3.so' - Shared object "libsqlite3.so.0" not
 +
found, required by "sqlite3.so" in Unknown on line 0
 +
PHP Warning:  PHP Startup: Unable to load dynamic library
 +
'/usr/local/lib/php/20131226/pdo_sqlite.so' - Shared object "libsqlite3.so.0"
 +
not found, required by "pdo_sqlite.so" in Unknown on line 0
 +
</syntaxhighlight>
 +
 +
このようにアップデートします。
 +
<syntaxhighlight lang="bash">
 +
$ sudo pkg install sqlite3
 +
Updating FreeBSD repository catalogue...
 +
FreeBSD repository is up-to-date.
 +
All repositories are up-to-date.
 +
The following 1 packages will be affected (of 0 checked):
 +
 +
Installed packages to be UPGRADED:
 +
        sqlite3: 3.8.4.2 -> 3.8.6
 +
 +
The process will require 59 KB more space.
 +
664 KB to be downloaded.
 +
 +
Proceed with this action? [y/N]: y
 +
Fetching sqlite3-3.8.6.txz: 100%  664 KB 136.0k/s    00:05
 +
Checking integrity... done (0 conflicting)
 +
[1/1] Upgrading sqlite3 from 3.8.4.2 to 3.8.6: 100%
 +
</syntaxhighlight>
 +
 +
== pear のアップデート ==
 +
pear 系のパッケージをアップデートする場合は、このような形でアップデートできます。
 +
<syntaxhighlight lang="bash">
 +
$ sudo pkg install `pkg info '*pear*' | perl -ne 's/-[\d].*$//;print;'`
 
</syntaxhighlight>
 
</syntaxhighlight>
  

2014年9月20日 (土) 12:38時点における版

FreeBSD に PHP 5.6 に Apache 用の libphp5.so と php コマンドをインストールします。

概要

Apache 用もlibphp5.so は、 mod_php56をインストールします。

インストール

$ sudo pkg install php56 php56-extensions mod_php56

PHP 5.5 から PHP 5.6 へアップグレードする方法

PHP 5.6 と PHP 5.5 は、別パッケージですので、PHP 5.5 が入ってる環境であれば、以下の方法でインストールします。 一度、php55系のパッケージを削除します。

$ pkg info | fgrep php55 >/tmp/php.txt
$ sudo pkg remove '*php55*'
$ sudo pkg install `sed -e 's/-5.5.*$//' -e 's/php55/php56/' \
-e 's/extensions.*/extensions/' /tmp/php.txt `

sqlite3 でエラーがおきる場合

sqlite3.so が libsqlite3.so.0 がありません、とエラーが出ている場合は、sqlite3 のパッケージをアップデートします。

$ php
PHP Warning:  PHP Startup: Unable to load dynamic library
'/usr/local/lib/php/20131226/sqlite3.so' - Shared object "libsqlite3.so.0" not
found, required by "sqlite3.so" in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library
'/usr/local/lib/php/20131226/pdo_sqlite.so' - Shared object "libsqlite3.so.0"
not found, required by "pdo_sqlite.so" in Unknown on line 0

このようにアップデートします。

$ sudo pkg install sqlite3
Updating FreeBSD repository catalogue...
FreeBSD repository is up-to-date.
All repositories are up-to-date.
The following 1 packages will be affected (of 0 checked):
 
Installed packages to be UPGRADED:
        sqlite3: 3.8.4.2 -> 3.8.6
 
The process will require 59 KB more space.
664 KB to be downloaded.
 
Proceed with this action? [y/N]: y
Fetching sqlite3-3.8.6.txz: 100%  664 KB 136.0k/s    00:05
Checking integrity... done (0 conflicting)
[1/1] Upgrading sqlite3 from 3.8.4.2 to 3.8.6: 100%

pear のアップデート

pear 系のパッケージをアップデートする場合は、このような形でアップデートできます。

$ sudo pkg install `pkg info '*pear*' | perl -ne 's/-[\d].*$//;print;'`

設定

PHP

/usr/local/etc/php.ini-development
/usr/local/etc/php.ini-production

Apache

LoadModule php5_module        libexec/apache24/libphp5.so

使い方

バージョン

$ php -v
PHP 5.6.0 (cli) (built: Sep 10 2014 06:12:49)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2014 Zend Technologies
    with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2014, by Zend Technologies

コマンドラインオプション

Usage: php [options] [-f] <file> [--] [args...]
   php [options] -r <code> [--] [args...]
   php [options] [-B <begin_code>] -R <code> [-E <end_code>] [--] [args...]
   php [options] [-B <begin_code>] -F <file> [-E <end_code>] [--] [args...]
   php [options] -S <addr>:<port> [-t docroot]
   php [options] -- [args...]
   php [options] -a
 
  -a               Run interactively
  -c <path>|<file> Look for php.ini file in this directory
  -n               No php.ini file will be used
  -d foo[=bar]     Define INI entry foo with value 'bar'
  -e               Generate extended information for debugger/profiler
  -f <file>        Parse and execute <file>.
  -h               This help
  -i               PHP information
  -l               Syntax check only (lint)
  -m               Show compiled in modules
  -r <code>        Run PHP <code> without using script tags <?..?>
  -B <begin_code>  Run PHP <begin_code> before processing input lines
  -R <code>        Run PHP <code> for every input line
  -F <file>        Parse and execute <file> for every input line
  -E <end_code>    Run PHP <end_code> after processing all input lines
  -H               Hide any passed arguments from external tools.
  -S <addr>:<port> Run with built-in web server.
  -t <docroot>     Specify document root <docroot> for built-in web server.
  -s               Output HTML syntax highlighted source.
  -v               Version number
  -w               Output source with stripped comments and whitespace.
  -z <file>        Load Zend extension <file>.
 
  args...          Arguments passed to script. Use -- args when first argument
                   starts with - or script is read from stdin
 
  --ini            Show configuration file names
 
  --rf <name>      Show information about function <name>.
  --rc <name>      Show information about class <name>.
  --re <name>      Show information about extension <name>.
  --rz <name>      Show information about Zend extension <name>.
  --ri <name>      Show configuration for extension <name>.

PHPサーバ

PHPサーバを起動する方法です。

$ php -S 0 0.0.0:8080

関連項目