Permalänk

PHP kommunicera med C++

Kan man få PHP kod att hämta data från ett körande C++program.
Jag har testat lite med att skriva till en fil hela tiden (1ggr/s), men det känns onödigt eftersom att jag bara har max några besökere per dag på min hemsida. Dessutom känns det inte så snyggt. (HDD:n bör väll inte slitas i onödan då Win inte skriver det fysiskt på disken hela tiden)

En fråga till, hur kan man skriva ut laddningstiden av hemsidan på hemsidan?

Kör Win 98SE + Apache 1.3.27 + PHP 4.3.0

Visa signatur

*** Signaturen raderad på grund av för många rader. Läs forumreglerna. /xphaze

Permalänk
Medlem

Ang laddningtiden, så i början av sidan:
$start = microtime();

i slutet av sidan:
$end = microtime();
$processTime = $end - $start;

Sedan formaterar du $processTime på något lämpigt sätt och printar ut den...

Visa signatur

¤Hakuna Matata¤
# Ibland försvinner 'j', 'å', 'ä' och 'ö'...
Signatur redigerad av GAPa. I textstorlek tre får man bara ha en rad.

Permalänk
Medlem

hm, måste programmet vara igång?

annars(?) system();

Visa signatur

Ehhh...
...öhhhh

Permalänk
Medlem
Visa signatur

Sentient Hyper-Optimised Data Access Network

Permalänk
Medlem

Funderar lite på vad för data som skall hämtas.
Skulle du inte bara kunna lagra det i en db och hämta upp det därifrån?

Visa signatur

/ Assar

Permalänk
Medlem

den länken ovan var visst mest för att bädda in python i c++, inte tvärtom. Denna länk talar om hur man gör c++-moduler som kan anropas från python:
http://www.python.org/doc/current/ext/ext.html

Visa signatur

Sentient Hyper-Optimised Data Access Network

Permalänk
Avstängd

yOhaneZ

Problem med synen? Här pratades det om php?

Visa signatur

[size="1"]#define QUESTION ((bb) !(bb)) // - Shakespeare[/size]

Permalänk
Avstängd

Det finns inte direkt något som heter "c++program". Dock kan du ett program vara skrivet i c++.

Så länge programmet inte har någon com interface är det inte mkt man kan göra. Och man har ju inte direkt kontroll över system minnet med php. Så för att du ska kunna läsa av ett program måste progrmet vara anpassat för com..

http://se2.php.net/com

Visa signatur

[size="1"]#define QUESTION ((bb) !(bb)) // - Shakespeare[/size]

Permalänk
Medlem

En variant under UNIX kan vara att använda pipor.
Det är samma sak om ett FIFO, en tom fil på hårddisken med en skrivare och en läsare. Istället för att alla data lagras på hårddisken skickas det istället vidare till läsaren och tvärtom utan att passera hårddisken.
Som du säkert förstår blir den ena sidan stillastående i väntan på data. Det skulle jag i C lösa med O_NONBLOCK, hur du gör det i PHP har jag ingen aning om. Finns nog många lösningar.

Jag läste ditt inlägg igen som jag brukar och råkade få syn på att du visst jobbade under Windows. Men jag postar endå mitt inlägg, det kan kanske vara till nytta.

EDIT: Finns det förresten inte pipor i Windows med?

Visa signatur

http://www.catb.org/~esr/faqs/smart-questions.html
"Tot kto samoiltushi infarmator tot kto sam ne ponjal sto on rasskasoval"

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av thecookie
yOhaneZ

Problem med synen? Här pratades det om php?

Oj då, så fel det kan bli ibland, förlåt!

Visa signatur

Sentient Hyper-Optimised Data Access Network

Permalänk
Medlem

Sockets fungerar med, gör så att ditt program skrivet i c++ lyssnar på en viss port, sen är det bara att ansluta via php och sen skicka och taemot data (detta måste du givetvis också implementera)

Permalänk

Okay, tackar för all hjälp.

Ska försöka lite med sockets, eller system, var det enda jag fattade

Angående laddningstiden, så tänkte jag om det fanns nått bättre sätt, så att man får tiden från det att sidan blev efterfrågad, för det är det som tar tid på min server, när den väll börjat generara den så går det ganska snabbt?

Visa signatur

*** Signaturen raderad på grund av för många rader. Läs forumreglerna. /xphaze