PHP Manual
Prev | Appendix N. List of Supported Protocols/Wrappers | Next

# Socket

This section contains the context options supported by the wrappers that work over sockets, like `tcp`, `http` or `ftp`.

As of PHP 5.1.0 only one option is supported, `bindto`, which can be used to specify the IP address (either IPv4 or IPv6) and/or the port number that PHP will use to access the network. The syntax is `ip:port` (you can set the IP or the port number to `0` if you want to let the system choose them for you).

> Note: As FTP creates two socket connections during normal operation, you cannot specify the port number in the `bindto` option. So, the only supported syntax is `ip:0` for the FTP wrapper.

Example N-1. Some examples of how to use the bindto option

`<?php
// connect to the internet using the '192.168.0.100' IP
$opts = array('socket' =>
array('bindto' => '192.168.0.100:0'));
// connect to the internet using the '192.168.0.100' IP and port '7000'
$opts = array('socket' =>
array('bindto' => '192.168.0.100:7000'));
// connect to the internet using port '7000'
$opts = array('socket' =>
array('bindto' => '0:7000'));
// create the context...
$context = stream_context_create($opts);
// ...and use it to fetch the data
echo file_get_contents('http://www.example.com', false, $context);
?>`

Prev | Home | Next
List of Supported Protocols/Wrappers | Up | HTTP and HTTPS