Corredor

ウェブ、プログラミングの勉強メモ。

2020-11-28 : このブログは2020年末をもって更新停止する予定です。
2021年以降は Neo's World (https://neos21.net/) で記事を公開していきますので、今後はコチラをご覧ください。
このブログの記事は2021年以降、Neo's World に順次移行していきます。元記事および本ブログは移行次第削除する予定です。

PHP

オレオレ・マイクロ・ブログをリニューアルした

以前作成した Neo's PHP Micro Blog というオレオレ・マイクロ・ブログ。 github.com Twitter を凍結されて以来、自分は誰かに見せるためではなく、自分が見聞きしたモノを記録しておくためだけにこうしたツールを使っていたんだよなと再認識し、コレで十分…

なんで PHP は CGI と違って実行権限がなくても動くの?

Perl や Python を CGI として動かしたい場合、パーミッションを 755 とかにして実行権限を付けないといけない。しかし、PHP ファイルは 644 と実行権限を付与していなくても動作する。コレはなぜか。 この挙動は、以前調べた「シェルスクリプトファイルに実…

PHP で JSON 文字列を2スペースインデントで整形出力する

PHP で簡単な JSON API を作っている。データを JSON ファイルに書き出す時に json_encode() 関数を使うが、この関数、デフォルトでは改行やスペースが含まれないので、出力した JSON ファイルは可読性に欠ける。 次のようにオプションを書くと、日本語文字…

Ubuntu 18.04 に nginx + fcgiwrap + php-fpm で CGI 環境を構築する

以前、CentOS 系の Linux で CGI on nginx をやったが、今回はそれの Ubuntu 版。 neos21.hatenablog.com 前提条件 Ubuntu 18.04 nginx はインストール済 (apt install -y nginx 程度) root ユーザで作業 $ nginx -v nginx version: nginx/1.14.0 (Ubuntu) C…

nginx で CGI (Perl・Ruby・PHP) を動かす

Apache みたいな感じでサクッと動かせるのかと思ったら、nginx ではすんなり CGI が動かせないらしい。やり方を調べて、nginx 上で Perl・Ruby・PHP スクリプトが動かせるようになったので、手順を紹介する。 前提条件として、nginx はインストール済で、$ s…

PHP でテキストファイルから行数を指定して行削除する方法

PHP

PHP での行削除、とっても簡単だった。 // テキストファイルを全部読み込む $myFile = file('example.txt'); // コレで「2行目」を削除できる unset($myFile[1]); // 書き込む file_put_contents('example.txt', $myFile); file() という関数でごそっと中身…

PHP で自分だけの簡易 Twitter を作ってみた

最近、ちょっと過激なツイートをするとすぐにアカウントロックされて1週間とか使えなくなるので、自分だけの Twitter を作ることにした。 無料枠の GCE インスタンスに、Apache と PHP をインストール。単一の PHP ファイルで動作する CGI スクリプトとして…

PHP で GET・POST リクエストを判別・処理する

Apache サーバ上に PHP ファイルを置いて、CGI みたく動かしてみたい。 通常の GET リクエスト時はページを表示し、URL パラメータによってちょっとした表示切り分けをしたりしたい 表示したページに、自ファイルに向けて POST 送信するフォームを用意してあ…

PHP でヒアドキュメントを書く

PHP

コレまで色々な言語でのヒアドキュメントの書き方を紹介してきた。 Bash : cat <<EOL → > EOL neos21.hatenablog.com Perl : print <</eol>

PHP でファイルの読み書きをしてみる

15・6年ぶりくらいに PHP を触っている。今回はテキストファイルの読み書きをしてみる。PHP v7.0.33 で確認。 1行ずつ読み込む ファイル全量を一気に読み込む ファイルのパーミッションについて 以上 1行ずつ読み込む まずは1行ずつ読み込む方法。 example.p…

GCE インスタンスに Apache と PHP をインストールして Web サーバを公開してみた

以前、GCP (Google Cloud Platform) の永久無料枠で GCE (Google Compute Engine) インスタンスを作った。 neos21.hatenablog.com neos21.hatenablog.com この記事のとおり進めたところだと、作成した GCE インスタンスは、再起動しても変動しない固定 Publi…

Windows に Chocolatey を使って PHP と Composer をインストールする・HTTPS 通信に失敗する時は認証局設定を行う

PHP のツールを動かしてみたくなったので、Windows に PHP 環境を構築する。Chocolatey をインストールしてあるので、コイツを使ってサクッと構築する。 PHP のインストール Composer のインストール php.ini でタイムゾーン設定をする ある PHP アプリを動…