Forum » Programiranje » Problem s PHP
Problem s PHP
*ziga* ::
Zivjo...
ce npr napisem E:\php\php.exe E:\www\script.php 12 10 ef (zadnji trije so parametri) v cmd mi skripto izvede brez problema, ce pa isti text vstavim v system() torej system("E:\php\php.exe E:\www\script.php 12 10 ef") pa se skripta ne izvede.To vem, ker sem nastimal da bi skripta poslala email z rezultatom.Poskusil sem tudi z popen()
torej popen("E:\php\php.exe E:\www\script.php 12 10 ef", "r") in spet brez rezultata...poskusil sem tudi prebrati ce skripta kaj vrne s pomocjo fgets in tudi to vrne nic.
Torej zanima me v cem tici problem in ali ja kaksen drug nacin da pospesim mojo php skripto(moja ideja je da ustvarim vec enakih procesov s popen().)
Hvala.
ce npr napisem E:\php\php.exe E:\www\script.php 12 10 ef (zadnji trije so parametri) v cmd mi skripto izvede brez problema, ce pa isti text vstavim v system() torej system("E:\php\php.exe E:\www\script.php 12 10 ef") pa se skripta ne izvede.To vem, ker sem nastimal da bi skripta poslala email z rezultatom.Poskusil sem tudi z popen()
torej popen("E:\php\php.exe E:\www\script.php 12 10 ef", "r") in spet brez rezultata...poskusil sem tudi prebrati ce skripta kaj vrne s pomocjo fgets in tudi to vrne nic.
Torej zanima me v cem tici problem in ali ja kaksen drug nacin da pospesim mojo php skripto(moja ideja je da ustvarim vec enakih procesov s popen().)
Hvala.
*ziga* ::
poskusi system('E:\php\php.exe E:\www\script.php 12 10 ef');
To deluje hvala.Kaj pa, ce hocem dobit te 3 stringe vn iz varibel?
npr.
system('E:\php\php.exe E:\www\script.php $var $var1 $var2');
To seveda ne bo delalo ampak ce pa dam double quotes bo seveda delalo ampak potem pa spet nastane prejsni problem...sem posukusal tudi z npr system("E:\\php\\php.exe E:\\www\\scrpt.php $var $var1 $var2"); ampak ne dela...
Zgodovina sprememb…
- spremenil: *ziga* ()
krho ::
system('E:\php\php.exe E:\www\script.php '.$var.' '.$var1.' '.$var2.');
system(sprintf('E:\php\php.exe E:\www\script.php %s %s %s', $var, $var1, $var2);
si.Mail odprto-kodni odjemalec elektronske pošte. - http://www.simail.si
Uredite si svojo zbirko filmov, serij in iger - http://xcollect.sf.net
Uredite si svojo zbirko filmov, serij in iger - http://xcollect.sf.net
techfreak :) ::
krho: In kakšne prednosti to prinaša? Mogoče je res malce lepše, ampak je približno 5x počasnejše od moje variante, ki se tudi večinoma uporablja.
krho ::
[root@x ~]# cat znj.php
[root@x~]# php znj.php
111.03987693787msec
222.13196754456msec
5x
<?php $var1 = 'a'; $var2 = 'b'; $var3 = 'c'; $start = microtime(true); for ($i = 0; $i < 100000; $i++) { $z = 'E:\php\php.exe E:\www\script.php '.$var1.' '.$var2.' '.$var3; } $end = microtime(true); echo (($end-$start)*1000) . "msec\n"; $start = microtime(true); for ($i = 0; $i < 100000; $i++) { $z = sprintf('E:\php\php.exe E:\www\script.php %s %s %s', $var1, $var2, $var3); } $end = microtime(true); echo (($end-$start)*1000) . "msec\n";
[root@x~]# php znj.php
111.03987693787msec
222.13196754456msec
5x
si.Mail odprto-kodni odjemalec elektronske pošte. - http://www.simail.si
Uredite si svojo zbirko filmov, serij in iger - http://xcollect.sf.net
Uredite si svojo zbirko filmov, serij in iger - http://xcollect.sf.net
Zgodovina sprememb…
- spremenil: krho ()
techfreak :) ::
ws10:~# php-cgi /var/www/test.php
X-Powered-By: PHP/5.2.6-1+lenny3
Content-type: text/html
54.4641017914msec
108.417034149msec
Hm ... v mojem primeru je bilo 5x. Res pa je, da sem v for zanki echal vrednost (v tvojem primeru $z).
Ampak vseeno je 1x hitrejši moj način.
*ziga* ::
No hvala tudi za teste fantje.Jaz sicer uporabljam popen(), da zazenem vec skript na enkrat in pospesim delovanje :)
*ziga* ::
Hmm zdaj pa imam tezave z popen() na linuxu...
Recmo ko v SSH vpisem php /home/path/script.php argument argument2 se izvede vredu.Ko pa poskusim z popen na linux z
popen('php /home/path/script.php argument','r');
Pa skripte enostavno ne zazene...tudi ce podam full path od phpja ne...se komu svita zakaj ne? In mogoce kdo pozna alternativo?
Recmo ko v SSH vpisem php /home/path/script.php argument argument2 se izvede vredu.Ko pa poskusim z popen na linux z
popen('php /home/path/script.php argument','r');
Pa skripte enostavno ne zazene...tudi ce podam full path od phpja ne...se komu svita zakaj ne? In mogoce kdo pozna alternativo?
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | CMD mi ne prepozna ukaza phpOddelek: Operacijski sistemi | 863 (791) | R33D3M33R |
» | problem z phpjemOddelek: Izdelava spletišč | 4279 (3692) | snow |
» | HTTP serv. programOddelek: Omrežja in internet | 1939 (1776) | pivmik |
» | http + ftp serverOddelek: Programska oprema | 1685 (1470) | Spajky |
» | Apache & PhpOddelek: Programiranje | 1704 (1585) | iBojan |