「php」タグアーカイブ
adminer を使ってみる
借りている無料ホームページスペースの
mysql が 5.0.x と古くて、サーバ管理ツール付属の phpMyAdmin もむっちゃ古かったので
高速化のために php のバージョンを 5.4 → 7 に上げて、phpMyAdmin の最新版を入れたら
今度は mysql が古過ぎて、最新版の phpMyAdmin に対応していなくて、
それではと mysql 5.0.x に対応している phpMyAdmin のちょっと古いバージョンを入れたら
今度は php7 に対応していなくて・・・ orz
(これが八方ふさがりって奴!?)
というわけで、1つのPHPファイルでDB管理できる adminer を使ってみた。
単純に使うだけなら Adminer バージョン .php をダウンロードして adminer.php にリネームしてサイトに放り込めばOK。
mysql しか使わないなら for MySQL を使えば、更に小さい。多言語を使わない英語版ならもっともっと小さい。
今回は、MySQL と PostgreSQL の多言語版を使おうと思ったけれど 414KB と意外に大きい。
ならば!! と Source codes を落としてきて、adminer/include/lang.inc.php の $langs 配列要素を ‘English’ と ‘日本語’ 以外削除。
その後、compile.php を実行して英語・日本語のみバージョンを作成。サイズは 288KB。ほぼ、英語のみバージョンと同じサイズになった。
これで、PHP7 + MySQL 5.0 でも管理ツールが使えるようになったよ。
Raspberry Pi に php7 を入れる
先ずインストールされている一覧を表示
$ dpkg -l
1 2 3 4 5 6 7 8 9 10 11 12 |
ii php-apc 4.0.7-1 all APC User Cache for PHP 5 (transit ii php-gettext 1.0.11-1 all read gettext MO files directly, w ii php-tcpdf 6.0.093+dfsg all PHP class for generating PDF file ii php5 5.6.24+dfsg- all server-side, HTML-embedded script ii php5-apcu 4.0.7-1 armhf APC User Cache for PHP 5 ii php5-cli 5.6.24+dfsg- armhf command-line interpreter for the ii php5-common 5.6.24+dfsg- armhf Common files for packages built f ii php5-gd 5.6.24+dfsg- armhf GD module for php5 ii php5-json 1.3.6-1 armhf JSON module for php5 ii php5-mcrypt 5.6.24+dfsg- armhf MCrypt module for php5 ii php5-mysql 5.6.24+dfsg- armhf MySQL module for php5 ii php5-readline 5.6.24+dfsg- armhf Readline module for php5 |
php5 関連を削除
$ apt-get remove php5*
1 2 |
以下のパッケージは「削除」されます: libapache2-mod-php5 php-apc php-gettext php-tcpdf php5 php5-apcu php5-cli php5-common php5-gd php5-json php5-mcrypt php5-mysql php5-readline phpmyadmin |
先頭に rc とついていれば削除されている。
1 2 3 4 5 6 7 8 |
rc php5-apcu 4.0.7-1 armhf APC User Cache for PHP 5 rc php5-cli 5.6.24+dfsg-0+deb8u1 armhf command-line interpreter for the php5 scripting language rc php5-common 5.6.24+dfsg-0+deb8u1 armhf Common files for packages built from the php5 source rc php5-gd 5.6.24+dfsg-0+deb8u1 armhf GD module for php5 rc php5-json 1.3.6-1 armhf JSON module for php5 rc php5-mcrypt 5.6.24+dfsg-0+deb8u1 armhf MCrypt module for php5 rc php5-mysql 5.6.24+dfsg-0+deb8u1 armhf MySQL module for php5 rc php5-readline 5.6.24+dfsg-0+deb8u1 armhf Readline module for php5 |
php7.0 のリポジトリを登録
1 2 3 4 5 6 7 |
$ sudo vi /etc/apt/sources.list ファイルの最後に以下の行を追加 deb http://repozytorium.mati75.eu/raspbian jessie-backports main contrib non-free $ sudo gpg --keyserver pgpkeys.mit.edu --recv-key CCD91D6111A06851 $ sudo gpg --armor --export CCD91D6111A06851 | sudo apt-key add - $ sudo apt-get update |
apt-get install php7.0 php7.0-mysql php7.0-gd php7.0-mbstring php7.0-curl php7.0-xml php7.0-xmlrpc
apt-get install php php-mysql php-gd php-mbstring php-curl php-xml php-xmlrpc (自動的に php7.0 系がインストールされる)
でインストール
なんか立ち上げなおしたら「お使いのサーバーの PHP では WordPress に必要な MySQL 拡張を利用できないようです。」とか出た。
apache を入れ直したりガチャガチャやっていたのだが、apache のログを見たら Exec-php が悪さをしていた。
php7.0 用のパッチを宛てたら立ち上がった。
うん。前より早くなってるね。DBアクセスは相変わらずだけど。
参考:install-php-7-on-raspbian-raspberry-pi
Json を読込んで PHP の配列に入れる
Json の構造は例えばこんな感じ
1 2 3 4 5 6 |
{ "Order": { "OrderStatus": 1, "OrderCount": 1 } } |
PHP で読み込むには json_decode を使う。
1 2 3 |
$json = file_get_contents($url); $arr = json_decode($json, true); var_dump($arr); |

Codiad
PHP製のWeb IDE
Webブラウザ上でファイルを直接編集できるようになる。
40以上のプログラミング言語をサポートしている。
公開サーバで使うと怖いが、ローカルで使うなら面白そう。

MAMP Stack
