August 22, 2020
<?php 〜 ?> # PHP は HTML に埋め込むものとして作られている。
<h1><?php echo 'hi'; ?></h1> この実行結果は以下の通り。
<h1>hi</h1> PHP タグによって PHP コードの埋め込みがなされる。
出力 - echo # 上記サンプルコードの通り、 PHP タグ内で echo 関数(実際は関数ではなく言語構造)を利用することで HTML へ結果が結合されて出力される。
埋め込み echo の短い書き方 # PHP 5.4.0 以降であれば php.ini の設定に関わらず、以下の書き方ができる。
<h1><?='hi'?></h1> 制御構文 # 制御構文を使って HTML 出力が可能。
<?php if(true) { ?> <p>true で出力</p> <?php } else { ?> <p>false で出力</p> <?php } ?> <?php for($i = 0; $i < 10; $i++) { ?
...
August 22, 2020
ポータブルな PHP 実行環境が欲しくて Docker Hub の PHP イメージを眺めるメモ。
https://hub.docker.com/_/php
CLI で実行するサンプル # docker run -it --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp php:7.4-cli php my-script.php my-script.php は以下の通り。
<?php echo "hello\n"; 実行結果。
$ docker run -it --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp php:7.4-cli php my-script.php hello インストール済みのモジュールや phpinfo() を確認する # php -m php -i Extensions をインストールするには以下らへんが利用できるらしい。必要になった時のためにメモだけ。
docker-php-ext-configure docker-php-ext-install docker-php-ext-enable 例えば GD extension をインストールしたイメージを用意するには以下のような Dockerfile を用意すれば良いと。
FROM php:7.4-fpm RUN apt-get update && apt-get install -y \ libfreetype6-dev \ libjpeg62-turbo-dev \ libpng-dev \ && docker-php-ext-configure gd --with-freetype --with-jpeg \ && docker-php-ext-install -j$(nproc) gd PECL extensions をインストールする場合はこう。
...