理想情况下,您应该以 PHP 和 Perl 都易于阅读的格式存储共享/配置数据。XML、JSON 或带有键值对的简单文本文件(如 simbabque 建议的 .ini 文件)会很好用。
如果您决定在 Perl 中读取 PHP 文件,但又不想使用 PHP::Include 之类的模块,那么您只需要编写如下内容:
use IO::File;
sub require_php {
my $source_filename = $_[0];
my $dest_filename = 'temp.inc.pl';
open my $source, $source_filename or die "Could not open $source_filename: $!";
open my $destination, '>>'.$dest_filename or die "Cound not open file for writing";
while(my $line = <$source>) {
if(index($line,'<?php')==-1 && index($line,'?>')==-1) {
print $destination $line
}
}
close $destination;
close $source;
require $dest_filename;
unlink $dest_filename;
}
our $some_var = '';
require_php('myphp.inc');
这将以$some_var
具有“hello world”的值结束。