Re: Pqsocket not implemented in PHP - Mailing list pgsql-php

From Volkan YAZICI
Subject Re: Pqsocket not implemented in PHP
Date
Msg-id 7104a7370506300310710e365c@mail.gmail.com
Whole thread Raw
In response to Pqsocket not implemented in PHP  ("Nick Stone" <nick@harelane.com>)
Responses Re: Pqsocket not implemented in PHP  ("Nick Stone" <nick@harelane.com>)
List pgsql-php
Hi,

On 6/30/05, Nick Stone <nick@harelane.com> wrote:
> I'm currently implementing a standalone app using php cli. Part of the app
> connects to Postgres and waits for a notification using the "Listen
> <tablename>" SQL. In the postgres C lib there is a function called
> "Pqsocket" which returns the file-descriptor of the socket connection to
> Postgres. With this I can use a simple select server to sleep on this
> interface and others in the application.
>
> Does anybody now of a patch to make this available under PHP or does the
> structure of PHP code effectively make this type approach impossible?

You can write a very simple patch returns socket FD using PQsocket().
But, AFAIC, it's not as simple as it seems to listen a socket using
just its FD value. As I understand from the source code, resource
required by socket_open() function has its own internal struct
representation, which means you need to be familiar with PHP internal
data types and mechanism before writing a patch. Therefore, it's not
impossible to implement such a feature, but, to be honest, it needs a
hard work.

IMHO, you can enter a loop with pg_last_notice() by using usleep(). I
won't think it'd cost so much system resource for you.

Regards.

pgsql-php by date:

Previous
From: "Nick Stone"
Date:
Subject: Pqsocket not implemented in PHP
Next
From: "Nick Stone"
Date:
Subject: Re: Pqsocket not implemented in PHP