я, конечно, понимаю, что я люто вовремя, но может кому пригодиться)
самый дешевый и оптимальный способ - имхо это tcp или udp сокеты.
например так:
php:
public function sendToHandler($configStr)
{
$srvIP = '127.0.0.1';
$srvPort = 7755;
$socket = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
$result = socket_connect($socket, $srvIP, $srvPort);
$len = strlen($configStr);
socket_send($socket, $configStr, $len, 0);
}
qt c++:
ConnectToPHP::ConnectToPHP(QObject *parent) :
QObject(parent)
{
udpSocket = new QUdpSocket();
udpSocket->bind(QHostAddress::LocalHost, 7755);
connect(udpSocket, SIGNAL(readyRead()), this, SLOT(readData()));
treadPool = new QThreadPool(this);
}
void ConnectToPHP::readData()
{
while (udpSocket->hasPendingDatagrams())
{
QByteArray datagram;
datagram.resize(udpSocket->pendingDatagramSize());
QHostAddress sender;
quint16 senderPort;
udpSocket->readDatagram(datagram.data(), datagram.size(), &sender, &senderPort);
Runable* newRun = new Runable();
newRun->setConfig(QString(datagram));
newRun->run();
}
}