🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.php
8 messages
8 total messages Started by Jivanmukta Fri, 29 Apr 2022 04:54
skrypt PHP uruchamiany z C++
#232581
Author: Jivanmukta
Date: Fri, 29 Apr 2022 04:54
18 lines
1539 bytes
Skrypt PHP uruchomiony w wiersza poleceń Linuxa zwraca mi inne wyniki 
niż ten sam skrypt uruchomiony z tymi samymi danymi wejściowymi z C++, 
funkcja popen. Nie używam w skrypcie liczb psudolosowych ani dostępu do 
sieci.
Jak to wyłumaczyć?
Skrypt PHP przetwarza dane wejściowe z pliku tekstowego i wysyła (przez 
echo) przetworzony tekst - dopisuje pewne napisy do tekstu.
Oto jak uruchamiam go z C++:
     array<char, 128> buffer;
     string result = ""; // cmd's stdout
     unique_ptr<FILE, decltype(&pclose)> pipe(popen(cmdstr.c_str(), 
"r"), pclose);
     if (!pipe) {
         throw runtime_error("popen() failed");
     }
     while (fgets(buffer.data(), buffer.size(), pipe.get()) != nullptr) {
         result += buffer.data();
     }
Re: skrypt PHP uruchamiany z C++
#232582
Author: Tomek
Date: Fri, 29 Apr 2022 07:04
24 lines
2100 bytes
W dniu 29.04.2022 o 06:54, Jivanmukta pisze:
> Skrypt PHP uruchomiony w wiersza poleceń Linuxa zwraca mi inne wyniki 
> niż ten sam skrypt uruchomiony z tymi samymi danymi wejściowymi z C++, 
> funkcja popen. Nie używam w skrypcie liczb psudolosowych ani dostępu do 
> sieci.
> Jak to wyłumaczyć?
> Skrypt PHP przetwarza dane wejściowe z pliku tekstowego i wysyła (przez 
> echo) przetworzony tekst - dopisuje pewne napisy do tekstu.
> Oto jak uruchamiam go z C++:
>      array<char, 128> buffer;
>      string result = ""; // cmd's stdout
>      unique_ptr<FILE, decltype(&pclose)> pipe(popen(cmdstr.c_str(), 
> "r"), pclose);
>      if (!pipe) {
>          throw runtime_error("popen() failed");
>      }
>      while (fgets(buffer.data(), buffer.size(), pipe.get()) != nullptr) {
>          result += buffer.data();
>      }

Inne środowisko, zmienne itp?

Może w C++ nie wywołuj bezpośrednio PHP tylko ten skrypt obuduj może 
jeszcze skryptem shelowym.
Re: skrypt PHP uruchamiany z C++
#232583
Author: Jivanmukta
Date: Fri, 29 Apr 2022 08:00
28 lines
2057 bytes
W dniu 29.04.2022 o 09:04, Tomek pisze:
> W dniu 29.04.2022 o 06:54, Jivanmukta pisze:
>> Skrypt PHP uruchomiony w wiersza poleceń Linuxa zwraca mi inne wyniki 
>> niż ten sam skrypt uruchomiony z tymi samymi danymi wejściowymi z C++, 
>> funkcja popen. Nie używam w skrypcie liczb psudolosowych ani dostępu 
>> do sieci.
>> Jak to wyłumaczyć?
>> Skrypt PHP przetwarza dane wejściowe z pliku tekstowego i wysyła 
>> (przez echo) przetworzony tekst - dopisuje pewne napisy do tekstu.
>> Oto jak uruchamiam go z C++:
>>      array<char, 128> buffer;
>>      string result = ""; // cmd's stdout
>>      unique_ptr<FILE, decltype(&pclose)> pipe(popen(cmdstr.c_str(), 
>> "r"), pclose);
>>      if (!pipe) {
>>          throw runtime_error("popen() failed");
>>      }
>>      while (fgets(buffer.data(), buffer.size(), pipe.get()) != nullptr) {
>>          result += buffer.data();
>>      }
> 
> Inne środowisko, zmienne itp?
nie
> 
> Może w C++ nie wywołuj bezpośrednio PHP tylko ten skrypt obuduj może 
> jeszcze skryptem shelowym.
> 
spróbuję
Re: skrypt PHP uruchamiany z C++
#232585
Author: Jivanmukta
Date: Fri, 29 Apr 2022 08:10
2 lines
1062 bytes
Czy istnieje możliwość debugowania takiego skryptu podczas uruchomienia 
z C++? Nie bardzo to sobie wyobrażam, ale zapytać można.
Re: skrypt PHP uruchamiany z C++
#232586
Author: Jivanmukta
Date: Fri, 29 Apr 2022 10:27
5 lines
1234 bytes
W dniu 29.04.2022 o 10:10, Jivanmukta pisze:
> Czy istnieje możliwość debugowania takiego skryptu podczas uruchomienia 
> z C++? Nie bardzo to sobie wyobrażam, ale zapytać można.
W sumie mógłbym zapisywać teksty wykonywanych instrukcji PHP do swojego 
loga.
Re: skrypt PHP uruchamiany z C++
#232587
Author: Jivanmukta
Date: Fri, 29 Apr 2022 10:48
7 lines
1380 bytes
W dniu 29.04.2022 o 12:27, Jivanmukta pisze:
> W dniu 29.04.2022 o 10:10, Jivanmukta pisze:
>> Czy istnieje możliwość debugowania takiego skryptu podczas 
>> uruchomienia z C++? Nie bardzo to sobie wyobrażam, ale zapytać można.
> W sumie mógłbym zapisywać teksty wykonywanych instrukcji PHP do swojego 
> loga.
Znalazłem https://github.com/Qihoo360/phptrace
Re: skrypt PHP uruchamiany z C++
#232588
Author: radekp
Date: Wed, 04 May 2022 13:26
8 lines
1560 bytes
Fri, 29 Apr 2022 06:54:57 +0200, w <t4fr3h$v89d$1@portraits.wsisiz.edu.pl>,
Jivanmukta <jivanmukta@poczta.onet.pl> napisał(-a):

> Skrypt PHP uruchomiony w wiersza poleceń Linuxa zwraca mi inne wyniki 
> niż ten sam skrypt uruchomiony z tymi samymi danymi wejściowymi z C++, 
> funkcja popen. Nie używam w skrypcie liczb psudolosowych ani dostępu do 

A jaka jest różnica w wynikach?
Re: skrypt PHP uruchamiany z C++
#232584
Author: Lemat
Date: Wed, 04 May 2022 17:43
36 lines
2314 bytes
W dniu 29.04.2022 o 10:00, Jivanmukta pisze:
> W dniu 29.04.2022 o 09:04, Tomek pisze:
>> W dniu 29.04.2022 o 06:54, Jivanmukta pisze:
>>> Skrypt PHP uruchomiony w wiersza poleceń Linuxa zwraca mi inne wyniki 
>>> niż ten sam skrypt uruchomiony z tymi samymi danymi wejściowymi z 
>>> C++, funkcja popen. Nie używam w skrypcie liczb psudolosowych ani 
>>> dostępu do sieci.
>>> Jak to wyłumaczyć?
>>> Skrypt PHP przetwarza dane wejściowe z pliku tekstowego i wysyła 
>>> (przez echo) przetworzony tekst - dopisuje pewne napisy do tekstu.
>>> Oto jak uruchamiam go z C++:
>>>      array<char, 128> buffer;
>>>      string result = ""; // cmd's stdout
>>>      unique_ptr<FILE, decltype(&pclose)> pipe(popen(cmdstr.c_str(), 
>>> "r"), pclose);
>>>      if (!pipe) {
>>>          throw runtime_error("popen() failed");
>>>      }
>>>      while (fgets(buffer.data(), buffer.size(), pipe.get()) != 
>>> nullptr) {
>>>          result += buffer.data();
>>>      }
>>
>> Inne środowisko, zmienne itp?
> nie
>>
>> Może w C++ nie wywołuj bezpośrednio PHP tylko ten skrypt obuduj może 
>> jeszcze skryptem shelowym.
>>
> spróbuję

ależ tak! LANG=C

-- 
Pozdrawiam
Lemat
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads