My Photo

« December 2014 | Main | February 2015 »

January 25, 2015

[CentOS 6.6]PHPのインストール

インストール

パッケージではなく "PHP サポート" というパッケージグループをインストールした。

# yum -y groupinstall "PHP サポート"
<中略>

================================================================================
 パッケージ         アーキテクチャ バージョン             リポジトリー     容量
================================================================================
インストールしています:
 php                x86_64         5.3.3-40.el6_6         updates         1.1 M
 php-gd             x86_64         5.3.3-40.el6_6         updates         109 k
 php-pdo            x86_64         5.3.3-40.el6_6         updates          78 k
 php-pear           noarch         1:1.9.4-4.el6          base            393 k
 php-xml            x86_64         5.3.3-40.el6_6         updates         106 k
依存性関連でのインストールをします。:
 libXpm             x86_64         3.5.10-2.el6           base             51 k
 php-cli            x86_64         5.3.3-40.el6_6         updates         2.2 M
 php-common         x86_64         5.3.3-40.el6_6         updates         527 k

トランザクションの要約
================================================================================
インストール         8 パッケージ

総ダウンロード容量: 4.5 M
インストール済み容量: 16 M
<中略>

完了しました!

加えて php-mbstring もインストール。
結果は以下のようになる。

# /usr/bin/php -v
PHP 5.3.3 (cli) (built: Oct 30 2014 20:12:53) 
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
# yum list installed | grep php
php.x86_64                            5.3.3-40.el6_6                    @updates
php-cli.x86_64                        5.3.3-40.el6_6                    @updates
php-common.x86_64                     5.3.3-40.el6_6                    @updates
php-gd.x86_64                         5.3.3-40.el6_6                    @updates
php-mbstring.x86_64                   5.3.3-40.el6_6                    @updates
php-pdo.x86_64                        5.3.3-40.el6_6                    @updates
php-pear.noarch                       1:1.9.4-4.el6                     @base   
php-pgsql.x86_64                      5.3.3-40.el6_6                    @updates
php-xml.x86_64                        5.3.3-40.el6_6                    @updates

httpd.confやphp.iniを変更しなくても、httpdを再起動するととりあえずPHPが使えるようになった。
確認のために、/var/www/html にPHPコードを含む.phpファイルを置いてブラウザからアクセスすると、想定通りPHPコードが実行された。

設定

特に手で設定ファイルを修正しなくてもPHPは使えるが、備忘のために設定ファイルについて書きとめておく。
httpdとphpの設定ファイルは以下のように置かれている。

/etc
├─httpd
│  ├─conf
│  │  └─httpd.conf
│  └─conf.d
│      ├─php.conf
│      ├─….conf
├─php.ini
└─php.d
    └─*.ini

httpd.conf には

Include conf.d/*.conf

という記述があって、これにより conf.d ディレクトリになる php.conf などの.confファイルが読み込まれる。
php.conf は以下のようになっている(コメント行を除く)。httpd.conf は変更する必要がない。

<IfModule prefork.c>
  LoadModule php5_module modules/libphp5.so
</IfModule>
<IfModule worker.c>
  LoadModule php5_module modules/libphp5-zts.so
</IfModule>

AddHandler php5-script .php
AddType text/html .php

DirectoryIndex index.php

php.ini はデフォルトで /etc/php.d の.iniファイルを読み込むようになっていて、PHPのモジュールをインストールすると /etc/php.d にそのインストールしたモジュールの設定ファイルが置かれて、php.ini がそれを読み込んでモジュールが使用可能になるようだ。例として pdo.ini は以下のようになっている。

; Enable pdo extension module
extension=pdo.so

January 02, 2015

PHPメモ050:strtotime()で特定の日の前日/翌日を取得する

文字列で特定の日付があって、その日の前日/翌日を取得する場合、今までは

strftime('%Y/%m/%d', strtotime('-1 day', strtotime('2015/01/01')));
strftime('%Y/%m/%d', strtotime('+1 day', strtotime('2015/01/01')));

みたいに strtotime() を2回使って書いていたが、次のように1回で書くことができる

strftime('%Y/%m/%d', strtotime('2015/01/01 -1 day'));
strftime('%Y/%m/%d', strtotime('2015/01/01 +1 day'));

こうも書ける。

strftime('%Y/%m/%d', strtotime('yesterday 2015/01/01'));
strftime('%Y/%m/%d', strtotime('tomorrow 2015/01/01'));

参考ページ:
PHP: strtotime - Manual
[php] date()とstrtotime()で日時を取得する | きほんのき
【PHP】strtotime で利用できるパラメータいろいろ | バシャログ。

January 01, 2015

PHPメモ049:コマンドラインのオプションとコマンドラインでのコードの実行

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

phpの主なコマンドラインオプション。

オプション 説明
-q 静寂モード。HTTPヘッダの出力を抑制する。
-d php.ini で指定できる設定ディレクティブに カスタム値を設定する。構文は以下。
-d configuration_directive[=value]
値の部分を省略すると、設定ディレクティブに"1"を指定する。
-i phpinfo()をコールし結果を出力する。
-v PHPのバージョンを表示する。
-r コマンドラインに記述したPHPのコードを実行する。

-rオプションによるコマンドラインでのコードの実行

-rオプションでファイルに保存したコードではなく、コマンドラインに書いたコードをで実行できる。
コードの部分はをダブルクォートで囲むと、PHPの変数のつもりで書いた「$変数名」がシェル変数としてシェルに置換されることがあるので注意。
実行例は以下。

$ /usr/bin/php -r 'echo "abc123\n";'
abc123

参考ページ:
PHP: オプション - Manual
【php】ちょっとしたphpをコマンドラインからさくっと実行する at softelメモ

« December 2014 | Main | February 2015 »

May 2017
Sun Mon Tue Wed Thu Fri Sat
  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      
無料ブログはココログ

日本blog村

  • にほんブログ村 IT技術ブログへ
  • にほんブログ村 アニメブログへ
  • にほんブログ村 サッカーブログ アルビレックス新潟へ

好きな音楽家

メモ

XI-Prof