Schrift
[thread]2958[/thread]

PHP-Scripte mit open öffnen?: PHP aus Perl starten und in Perl auswert



<< >> 9 Einträge, 1 Seite
stardust
 2006-02-17 13:51
#29630 #29630
User since
2006-02-17
2 Artikel
BenutzerIn
[default_avatar]
Hallo erstmal!

Ich möchte aus Perl ein PHP-Script starten und das Ergebnis mit Perl (im selben script) auswerten. Mit dem ersten $string bekomme ich wunderbar die Hilfe in meinen $ergebnis-String. Mit dem zweiten $string bekomme ich nur den Quelltext des Perl-Scripts.
Ich kann zwar durchaus ein bisschen Perl und PHP, aber das hier ist Neuland für mich, also bitte in einfachen Worten erklären.

Code: (dl )
1
2
3
4
5
6
7
8
    $string = 'C:\php\php-cgi.exe -h';
$string = 'C:\php\php-cgi.exe -f D:\scripts\script.php |';
open(NET, $string);#     || die "can't fork monster: $!";
while (<NET>) {
$ergebnis .= $_;
}
close(NET);#                       || die "can't close monster: $!";
#


Windows Server 2003 | Perl 5.8.7  |  PHP 5.0.4
stardust
 2006-02-17 14:42
#29631 #29631
User since
2006-02-17
2 Artikel
BenutzerIn
[default_avatar]
Stand irgendwie auf dem Schlauch.
Hab's so gelöst:
Code: (dl )
1
2
3
4
5
use LWP::Simple;
$uebergabewert="";
$url="http://.../file.php".$uebergabewert;
$rueckgabewert=get($url);
print $rueckgabewert;


Bleibt die sportliche Frage, ob es ohne Webserver dazwischen nicht schneller ist?
coax
 2006-02-17 23:34
#29632 #29632
User since
2003-08-11
457 Artikel
BenutzerIn
[default_avatar]
Probier's mal mit CPAN:PHP oder CPAN:PHP::Interpreter. Hab beide bislang nicht getestet.

[quote=stardust,17.02.2006, 13:42]Bleibt die sportliche Frage, ob es ohne Webserver dazwischen nicht schneller ist?[/quote]
Noch schneller waer's wenn du das PHP-Script nach Perl portierst *fg*
,,Das perlt aber heute wieder...'' -- Dittsche
esskar
 2006-02-18 03:42
#29633 #29633
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
versuch es mal so

Code: (dl )
1
2
3
my $result = `f:\\php\\php-cgi.exe -f "d:\\Eigene Dateien\\Entwicklung\\Webdesign\\phpMyAdmin-2.5.3-rc1\\chk_rel.php"`;

print "RESULT[$result]";
nepos
 2006-02-18 16:30
#29634 #29634
User since
2005-08-17
1420 Artikel
BenutzerIn
[Homepage] [default_avatar]
Hm. nur am Rande, eigentlich sollte es Perl auch unter Windows packen, bei den Pfaden '/' statt '\\' zu nehmen.
esskar
 2006-02-18 20:29
#29635 #29635
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
[quote=nepos,18.02.2006, 15:30]Hm. nur am Rande, eigentlich sollte es Perl auch unter Windows packen, bei den Pfaden '/' statt '\\' zu nehmen.[/quote]
ist auch so! man muss ja aber nicht immer jeden Trend mit machen! :p
nepos
 2006-02-18 21:43
#29636 #29636
User since
2005-08-17
1420 Artikel
BenutzerIn
[Homepage] [default_avatar]
Naja, '\\' im Pfad sieht irgendwie eklig aus ;)
Aber jeder wie ers mag :)
renee
 2006-02-19 01:28
#29637 #29637
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
@nepos: man gewoehnt sich dran, wenn man es oft genug benutzt ;) :p
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/
Strat
 2006-02-19 15:52
#29638 #29638
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
\\ (oder manchmal auch \\\\) ist nur dann noetig, wenn ein pfad an eine windows-dll oder -programm uebergeben wird; sonst kann man bedenkenlos / verwenden...
Wenn man's 100% sauber machen will, verwendet man z.B.
Code: (dl )
1
2
use File::Spec;
my $fileWithPath = File::Spec->catfile('f:', 'php', 'php-cgi.exe')

oder ->catdir fuer directories usw.
[/code]
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
<< >> 9 Einträge, 1 Seite



View all threads created 2006-02-17 13:51.