Rubyが得意なのでPHPからRubyへデータを渡す方法

環境
PHP 7.3.21
Windows10pro1909ver64bit

「PHPからローカルファイルの実行」としても利用できます。

概要

PHPからバッチファイルを実行して、cmdからRubyを実行します。

【準備】

Rubyを書いておきます。

test.rb

puts "test"

バッチファイルを書いておきます。

test.bat

ruby test.rb
pause
exit

※exitを書いておきましょう。本ページのコードでは、このバッチファイルが終了しない限りブラウザがぐるぐる回り続けます。

PHPコード

※index.htmlはあっても無くてもいいです。

PHPコードです。

test.php

<?php
exec("start test.bat");
echo "Rubyからputsできましたか?";
?>

実行

ビルトインサーバーを起動し、ブラウザでtest.phpを実行します。

「php -S localhost:8080」

http://localhost:8080/test.php

いかがですか?

コマンドプロンプトが開き、Rubyが実行されました。

余談・補足

直接ではないですがPHPからRubyを動かすことができました。

PHPはWebのデータ操作が他の比べて簡単にできます。あくまでも他に比べてです。もちろんRubyマスターであれば全部Rubyで書居てしまうんだと思います。私はまだまだです。

とにかく少し遠回りでも目的達成で良しとします。

個人的な使い方としては、データはPHPで揃えて、テキスト処理はRubyで行うときに使います。

タイトルとURLをコピーしました