概要 †
環境 †
- OS X 10.11 El Capitan
- Vagrant 1.8.1
- VirtualBox 5.0.20
- CentOS 7.2.1511
- PHP 5.6.21
PHP 5.6のインストール †
$ sudo yum -y install epel-release
$ cd /etc/yum.repos.d
$ sudo wget http://rpms.famillecollet.com/enterprise/remi.repo
$ yum list --enablerepo=remi --enablerepo=remi-php56 | grep php
- RemiリポジトリからPHP 5.6をインストール
$ sudo yum -y install --enablerepo=remi --enablerepo=remi-php56 php php-opcache php-devel php-pear php-mbstring php-mcrypt php-mysqlnd
php-devel ... PHP開発用モジュール
php-pear ... ライブラリのリポジトリ
php-opcache ... PHPスクリプトをコンパイルしキャッシュ
php-mbstring ... マルチバイト文字モジュール
php-mcypt ... 暗号化モジュール
php-mysqlnd ... MySQLモジュール
$ php -v
PHP 5.6.21 (cli) (built: Apr 28 2016 07:39:37)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies
Hello World †
<?php
// 1行コメント
# 1行コメント
/*
複数行コメント
複数行コメント
複数行コメント
*/
echo "hello from the TOP!"
?>
<!DOCTYPE html>
<html lang="ja">
<body>
<p>Hello World <?php echo "from PHP";?></p>
<body>
</html>
ビルトインWebサーバーを利用 †
$ php -S 192.168.33.10:8000
PHP 5.6.21 Development Server started at Sat May 21 05:27:21 2016
Listening on http://192.168.33.10:8000
Document root is /home/vagrant/php_lessons
Press Ctrl-C to quit.
変数とデータ型 †
<?php
$msg = "hello from the TOP!";
echo $msg;
- データ型
- 文字列 string
- 数値 integer, float
- 論理値 boolean / true false
- 配列
- オブジェクト
- null
var_dump($msg);
定数 †
<?php
define("MY_EMAIL", "yuji@dot.com");
echo MY_EMAIL;
// MY_EMAIL = "hogehoge"; // エラー発生
var_dump(__LINE__); // 現在の行(何行目か)を表示
var_dump(__FILE__); // ファイル名を表示
var_dump(__DIR__); // ディレクトリ名を表示
数値の計算 †
- 演算子:+ - * / % **(PHP5.6-)
$x = 10 % 3; // 1
$y = 30.2 / 4; // 7.55
var_dump($x);
var_dump($y);
$z = 5;
$z++; // 6
var_dump($z);
$z--; // 5
var_dump($z);
$x = 5;
$x += 2; // $x = $x + 2;と同じ。その他の四則演算も利用可能
var_dump($x);
文字列 †
$name = "yuji";
$s1 = "hello $name!\nhello again!"; // 特殊文字、変数の展開が有効
$s2 = 'hello $name!\nhello again!'; // 特殊文字、変数の展開が無効
var_dump($s1);
var_dump($s2);
- ブラウザコンソールより実行結果のソースコードを表示
string(24) "hello yuji!
hello again!"
string(26) "hello $name!\nhello again!"
// 以下の何れの記述でも可
$s1 = "hello $name!\nhello again!";
$s1 = "hello ${name}!\nhello again!";
$s1 = "hello {$name}!\nhello again!";
$s = "hello" . "world"; // helloworld
var_dump($s);