Schrift
[thread]3035[/thread]

PHP in Perl nutzen

Leser: 2


<< >> 10 Einträge, 1 Seite
terx`
 2006-10-03 23:24
#28653 #28653
User since
2005-08-23
6 Artikel
BenutzerIn
[Homepage] [default_avatar]
Hallo,

ich bastle zur Zeit ein einem Web-Server, der nun auch eine PHP-Schnittstelle bekommen soll.

Das mit CGI funktioniert auch wunderbar, nur dazu wird bei jeder Anfrage ein neuer Prozess gestartet.

Ich brauche etwas, das mir eine PHP-Datei parst (und der ich auch bestimmte Variabeln setzen kann wie $_GET, $_POST, usw) und das Ergebnis zurückgibt ohne dass ein extra Prozess gestartet wird.

Hat da jemand vorschläge, wie man das lösen kann?

Gruss

terx`
renee
 2006-10-04 01:06
#28654 #28654
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Also ohne extra Prozess wird es wohl nicht gehen, außer Du kannst irgendwie mit CPAN:PHP oder CPAN:PHP::Include arbeiten...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
terx`
 2006-10-04 18:38
#28655 #28655
User since
2005-08-23
6 Artikel
BenutzerIn
[Homepage] [default_avatar]
Nein, das ist es nicht. Ich will nicht den PHP-Code direkt in Perl nutzen, sondern den PHP-Code parsen lassen. Die Ausgabe ist es, was ich brauche.
pq
 2006-10-05 15:12
#28656 #28656
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
[quote=terx`,04.10.2006, 16:38]Nein, das ist es nicht. Ich will nicht den PHP-Code direkt in Perl nutzen, sondern den PHP-Code parsen lassen. Die Ausgabe ist es, was ich brauche.[/quote]
du willst den PHP code *ausführen*und nicht parsen.
dafür musst du den php-interpreter starten (ob nun über system()
oder über eins der genannten module), das geht gar nicht anders.\n\n

<!--EDIT|pq|1160046782-->
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
terx`
 2006-10-07 22:24
#28657 #28657
User since
2005-08-23
6 Artikel
BenutzerIn
[Homepage] [default_avatar]
Anscheinend.

Also ich hab bisher auch keine andere Möglichkeit gefunden.
Soweit ich weiß, kann man mit Dynaloader auch Bibliotheken unter Perl nutzen. Zb. mit der libphp4.so. Von C hab ich allerdings wenig Ahnung. Die Quellen habe ich mit trotzdem angeschaut, allerdings sind die sehr rar mit Kommentaren bestückt.

Kann man so die PHP-Lib unter Perl nutzen? Oder geht das nur mit speziellen Typen?
renee
 2006-10-08 00:31
#28658 #28658
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Hast Du es mal so probiert:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
use PHP;

my $php_file = '/path/to/file.php';

open my $fh,'<',$php_file or die $!;
my $content = do{local $/;<$fh>};
close $fh;

my $return;
PHP::options( stdout => sub {$return = $_[0];});
PHP::eval($content);
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
terx`
 2006-10-08 11:56
#28659 #28659
User since
2005-08-23
6 Artikel
BenutzerIn
[Homepage] [default_avatar]
und wie kann ich $_GET, $_POST etc setzen?
renee
 2006-10-08 12:01
#28660 #28660
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Du könntest mit
Code: (dl )
1
2
3
use LWP::Simple;

my $return = get('http://host.tld/script.php?param1=value1&param2=value2');


arbeiten...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
terx`
 2006-10-08 13:32
#28661 #28661
User since
2005-08-23
6 Artikel
BenutzerIn
[Homepage] [default_avatar]
Schön, aber auf host.tld läuft kein Webserver, der PHP unterstützt, der wird hier nämlich gerade im Thread entwickelt...
renee
 2006-10-08 14:57
#28662 #28662
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Dann dürfte CPAN:PHP::Interpreter für Dich das richtige sein.

Du solltest die Doku lesen und dann etwas damit rumspielen. Wenn Du dann etwas programmiert hast und dann auf Probleme stößt, kannst Du Dich wieder melden. Es bringt Dir nichts - und ich persönlich habe auch keine Lust dazu - wenn Du hier alles vorgekaut bekommst.
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
<< >> 10 Einträge, 1 Seite



View all threads created 2006-10-03 23:24.