PHP言語を学習するためには、実行環境を用意する必要があります。ところが必要なものをインストールして、"Hello World"にたどり着くまでがひと苦労です。そこで、お手軽なオンライン実行環境を調べました。
MySQLも使えるのかな?
Online Editor実行環境では難しいわね
まとめ
サービス名 | PHP バージョン | stdin | 結果の ソース 表示 | 結果の WebView 表示 | MySQL |
---|---|---|---|---|---|
1位 paiza.io | 7.4.1 | あり | あり | あり | |
2位 PHP Sandbox | 7.4.7 〜 4.4.9 | なし | あり | なし | |
3位 Repl.it PHP CLI Online Compiler | 7.2.24 | あり | あり | なし | |
4位 coding ground>PHP Online | 7.1.8 | あり | あり | なし | |
coding ground>PHP Web View Online | 7.1.8 | なし | なし | あり | |
coding ground>PHP MySQL Online | 7.1.8 | あり | あり | なし | あり |
5位 JDOODLE Online PHP IDE | 7.3 〜 5.6 | なし | あり | なし | |
PHP tryit Editor | 7.1.1 | なし | なし | あり | |
PHP Tester | 7.4 〜 4.3 | なし | なし | あり | |
PhpFiddle | 7.3.19 | なし | なし | あり | |
write php online | 7.3.19 | なし | なし | あり |
プログラミング自体がはじめての人、HTMLに慣れていない人には、結果のソース表示「あり」がおすすめです。
結果をWebView表示すると、改行したいとき、echo "\n";
ではなく、echo "<br/>";
とする必要があります。また、print_r
やvar_dump
で表示したいとき、echo "<pre>"
と echo "</pre>"
で囲む必要があります。
ほとんどのサービスで、ファイル関連、MySQL関連、ネットワーク関連の機能は使えませんが、それ以外の範囲を学習しましょう。
PHPでコマンドライン引数やstdinは必要なの?
知っておいたほうがいいけど、だいぶ先の話しよ。
今の段階では重要ではないわ。
1位 paiza.IO
日本語メニューがあります。テキストエディターやIDEの英語表記には、すぐに慣れます。そうは言っても、日本語メニューで操作できたほうが、学習障壁が低いことは間違いありません。
stdinを指定できます。
ヘルプによると、外部APIへの通信や外部サーバへのアクセスも可能です。さらに、スケジュール実行もできます。
トップページに戻ることなく、たくさんのプログラミング言語に切り替えることができます。
プログラミング教育のPaiza、クラウドサービスのPaizaCloudの関連サービスです。
パイザって、沖縄の宜野座(ぎのざ)を連想しちゃうよ
ざで終わるなら、
きょうざ、星座、ブラウザ
2位 PHP Sandbox
PHPバージョンの選択肢が豊富にあります。最新の7.4.7から、古くは5.0.4、4.4.9まであります。
学習用の書籍のスクリプトを写経したけれど、何回見直しても動かないときやエラー表示してしまうとき、PHPのバージョンが原因かもしれません。書籍で使っているPHPバージョンを調べて、このPHP Sandboxで試してみると、動くかもしれません。
バージョンを数えたら、75個もあったよ
3位 Repl.it PHP CLI Online Compiler
上がテキストエディターで、下がUbuntuターミナルです。
緑の実行ボタンで実行することもできますし、ターミナルで実行することもできます。
スクショを見ると、php main.php aaa bbb <test.txt
と起動しています。コマンドライン引数を受け取ることもできますし、stdinから読み取ることもできます。
curl_connect
関数はありませんでしたが、file_get_contents
で、外部のwebページを取得することができました。
さらに、他のプログラミン言語も選択できます。
REPLって何?
REPL(レプル)はRead Eval Print Loopの略で、一般的には対話型のインタープリタのことね。Rubyのirbコマンド、PythonのipythonコマンドがREPLよ。
4位 coding ground
上のスクショ、PHP Onlineは、stdin対応、ソース表示です。
トップページからPHP Webview Onlineへ移動すると、stdinなし、WebView表示です。
トップページからPHP MySQL Onlineへ移動すると、stdinあり、ソース表示、MySQLありです。
トップページには、多くのプログラミング言語のOnline Editorが揃っています。
PHP MySQL Onlineがいいんじゃない?
MySQLデータベースの作成やテーブル作成がよくわからなかったみたいよ
5位 JDOODLE Online PHP IDE
PHPバージョンは、7.3.10、7.2.5、7.1.11、5.6.16から選ぶことができます。
珍しいのは、コマンドライン引数を指定することができることです。スクショを見ると、「CommandLine Arguments」に「aaa bb」と入力していて、Resultの$argv[1]、$argv[2]に反映されていますね。
トップページには、72のプログラミング言語のOnline Compiler and Editorがあります。
MySQLやMongoDBのターミナルもあったよ
残念だけど、PHPからは接続できないのね
PHP Tryit Editor
スクショは左右表示ですが、上下表示もできます。
トップページを見ると、他に、Python、Java、C++のOnline Editorがありました。
PHPTester
PHPバージョンは、7.4〜5.3から選択できます。
メニュー | 詳細なバージョン |
---|---|
7.4 | 7.4.5 |
7.3 | 7.3.17 |
7.2 | 7.2.30 |
7.1 | 7.1.33 |
7.0 | 7.0.33 |
5.6 | 5.6.40 |
5.5 | 5.5.38 |
5.4 | 5.4.45 |
5.3 | 5.3.29 |
PhpFiddle
ソース表示と結果表示が切り替わります。多くのOnline Editorが上下または左右に同時表示できるので、少し使いにくいかもしれまえん。
通常は、ファイル末尾のPHP閉じタグ ?>
は省略可能ですが、このOnline Editorでは、PHP閉じタグをつけないと、「Line : 4 -- syntax error, unexpected '<', expecting end of file. PHP tag has to be closed.」エラーになりました。
write php online
<?php
以降の部分をテキスト欄に記述します。
改行コードとして"\n"
を記述しても、"n"
に変換されてしまいました。運営者のセキュリティポリシーなので仕方がありません。
これからPHPを学習しようという人には、クセがあるかもしれません。