素人質問で恐縮です。
perlからphpに変数の値を渡す事は可能でしょうか。
同一サーバー内に、/hoge/aaaa.pmと/sample/bbbb.phpがあります。
置き場所はそれぞれで特に関連性はありません。
aaaa.pm内で定義した
my $data = "あいうえお";
のような変数を、
bbbb.php内で受け取って使いたいです。
jQuery.ajaxでphpとjs間で変数の受け渡しが可能なのですが、
そんなイメージでやり取りできたらいいなと思っています。
難しい話であれば諦めます。
perlもphpも素人ですが、簡単なやり取りで済みそうなら取り入れたいです。
不明点などありましたら、ご質問ください。
よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
No.1 です
> aaaa.pl が必要という認識で良いでしょうか。
> 置き場所(ルートからのパス等)などを添える必要はないでしょうか。
方法はありますが、少々面倒になりがちなので、オススメしかねます
/hoge/aaaa.pm
package aaaa;
our $data = "ほげ";
/sample/bbbb.php
<?php
# /hoge が perl の @INC に入っている
$data = shell_exec("perl -m'aaaa' -e 'print \$aaaa::data'");
# そうでなければ直接指定
$data = shell_exec("perl -I'/hoge' -m'aaaa' -e 'print \$aaaa::data'");
この回答への補足
ありがとうございます。
直接指定する方法で、ご提示いただいたソースを元に実際のディレクトリ名/ファイル名などに合わせてみたのですが、php側で値は取れませんでした。
ファイルへのパスは、ルートからのものをあてています。
ファイルの権限はいったん755にして試しました。(関係ないかもしれませんが)
仮に動いたとしてもソースの意味をしっかり把握できていないので、諦めつつあるのですが、
今回のケースの場合でデバッグするには、どのあたりからアプローチするのが良いでしょうか。
怪しそうなところ、ありますでしょうか。
No.1
- 回答日時:
aaaa.pm
package aaaa;
our $data = "ほげ";
aaaa.pl
use aaaa;
print "$aaaa::data\n";
bbbb.php
<?php
$data = shell_exec("perl aaaa.pl");
この回答への補足
早速ありがとうございます!
ありがたいです!
2点質問させてください。
aaaa.pm
aaaa.pl
bbbb.php
と3つファイルがありましたが、
現状、aaaa.pl は存在しません。
今回の要望を満たすには、aaaa.pl が必要という認識で良いでしょうか。
aaaa.pl が何をしているのか、よくわかっておりません。
各ファイルの位置(置き場所)は、現状バラバラなのですが、
今回いただいた記述で置き場所(ルートからのパス等)などを添える必要はないでしょうか。
ただ、ファイル名を書いておけば勝手に連携してくれるような仕組みでしょうか。
shell_execを初めて見ているレベルでして、お恥ずかしい限りです。
どうぞよろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHPで訪問回数を表示するカウンタを作成したい 3 2023/05/27 07:09
- PHP WordpressのPHPを安全に編集する方法 1 2022/08/04 01:43
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- その他(プログラミング・Web制作) HTMLを組み込むことができない言語 3 2022/05/21 10:05
- PHP PHP MySql ページング 2 2022/09/20 06:38
- PHP バージョン情報の取得方法について 1 2023/03/15 11:56
- PHP PHP ページング データベース 1 2022/06/16 10:30
- PHP $_SESSIONに渡した後はそのまま使っても問題ありませんか? 3 2022/11/08 22:17
- Perl Perl の外部モジュールの利用方法 3 2022/07/10 18:34
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
オリジナルの掲示板
-
LCD ディスプレイを Raspberry ...
-
ArduinoのジャイロモジュールMP...
-
Excel VBAでリンク切れをチェッ...
-
モジュールとクラスの違いって...
-
VBAでoutlook365が起動しません。
-
Excel VBAで、ユーザーフォー...
-
Wordで、分かち書きをするVBA ...
-
Excel VBA 定義されたプロージ...
-
Excelで時刻になったら知らせて...
-
powershellで関数名を変更する...
-
グラフのX,Y座標を取得したい
-
vba 標準モジュールインポート...
-
例外処理のフローチャートの記...
-
COBOLで、Shellを起動するには?
-
Perl+DBD::Oracleのエラーがわ...
-
VB.NETでの他アプリケーション...
-
VBAのモジュールについて教えて...
-
Apache2 静的・動的モジュール...
-
BASP21使用のメール送信でコマ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
tex についての質問です このコ...
-
PHPとPerlの違い
-
JAVAとperlはどっちが将来有望...
-
校正ツールのパールって何ですか。
-
perl/tkとtcl/tkの違いを知りたい
-
phpとperl
-
Excel VBAでリンク切れをチェッ...
-
Excel VBA 定義されたプロージ...
-
例外処理のフローチャートの記...
-
ArduinoのジャイロモジュールMP...
-
ユーザー定義関数に#NAME?が返...
-
「デバイスは PRN を初期化でき...
-
VBAで別モジュールへの変数の受...
-
Excel VBA 『Call』で呼び出す...
-
エクセルVBAでシートモジュール...
-
LCD ディスプレイを Raspberry ...
-
モジュールとは何ですか
-
ハマったので助けて~。Apache...
-
VBA This Workbookモジュール...
-
VBでグローバル変数を宣言するには
おすすめ情報