2011-05-26 23 views
33

Mi código es así:Fatal error: Llamada a socket_create función no definida()

if(($this->master=socket_create(AF_INET,SOCK_STREAM,SOL_TCP)) < 0) 

    { 
    die("socket_create() failed, reason: ".socket_strerror($this->master)); 
    } 

cuando corro mi archivo php que crea la conexión con toma de web, que ha obtenido un error Fatal error: Call to undefined function socket_create() en la línea if (($ this-> master = socket_create (AF_INET, SOCK_STREAM, SOL_TCP)) < 0)

lo tanto no soy capaz de conectar la toma web y tampoco capaz de obtener mensaje de respuesta de socket porque Estado del socket: 3 (Cerrado) se muestra en mi navegador cuando se ejecuta la página del cliente.

¿Tiene una idea de lo que falta? Gracias de antemano.

+1

¿hay enchufes habilitados en su configuración? – martynthewolf

+0

¿Tiene la extensión habilitada en su php.ini? (marque phpinfo()). –

+0

Sí, la compatibilidad con el socket está activada y el navegador también es compatible con el socket web. –

Respuesta

45
+0

¿esto funcionó para ti? – mrBorna

+2

Solo tuve que descomentarlo en mi php.ini; También tuve que copiarlo desde otro directorio al directorio de PHP, pero vino con la instalación. –

+0

Gracias Bob. estoy usando el servidor wamp. Primero cambié en php.ini de apache y no tuve ningún efecto. Luego, también cambié en php.ini de php. Al final, comenzó el servidor websocket. :) – balamurugan

23

Para una instalación típica de XAMPP en las ventanas que tienen probablemente la php_sockets.dll en el directorio C: \ xampp \ php \ ext. Todo lo que tienes que hacer es ir a php.ini en el directorio C: \ xampp \ php y cambiar el ;extension=php_sockets.dll al extension=php_sockets.dll.

+0

funcionó como un encanto! –

Cuestiones relacionadas