Inicia una conexión de dominio Internet (AF_INET) o Unix (AF_UNIX). Para el domino Internet, abrirá una conexión TCP hacia el ordenador hostname en el puerto port. Para el dominio Unix, hostname se usará como ruta al socket, port debe ser 0 para este caso. El parámetro opcional timeout se puede usar para especificar un timeout en segundos para establecer la conexión.
fsockopen() devuelve un puntero a fichero, el cual se puede usar junto con las otras funciones de ficheros (como fgets(), fgetss(), fputs(), fclose(), feof()).
Si la llamada falla, esta devolverá falso y si los parámetros opcionales errno y errstr están presentes, indicarán el error del sistema que ocurrió en la llamada connect(). Si errno es 0 y la función devolviá falso, nos indica que el error ocurrió antes de la llamada connect(). Esto es debido principalmente a problemas inicializando el socket. Observe que los argumentos errno y errstr deben ser pasados por referencia.
Dependiendo del entorno, el dominio Unix o el parámetro opcional, timeout puede no estar disponible.
Por defecto, el socket será abierto en modo de bloqueo. Puede cambiarlo a modo de no bloqueo usando set_socket_blocking().