note 84902 added to function.curl-setopt

From: Date: Tue, 05 Aug 2008 11:56:41 +0000
Subject: note 84902 added to function.curl-setopt
Groups: php.notes 
Request: Send a blank email to php-notes+get-143155@lists.php.net to get a copy of this message
if you use <?php curl_setopt($ch, CURLOPT_INTERFACE, "XXX.XXX.XXX.XXX"); ?> to specify IP adress for request, sometimes you need to get list of all your IP's. ifconfig command will output something like: rl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 options=8<VLAN_MTU> inet 82.146.XXX.XXX netmask 0xffffffff broadcast 82.146.XXX.XXX inet 78.24.XXX.XXX netmask 0xffffffff broadcast 78.24.XXX.XXX inet 82.146.XXX.XXX netmask 0xffffffff broadcast 82.146.XXX.XXX inet 82.146.XXX.XXX netmask 0xffffffff broadcast 82.146.XXX.XXX inet 82.146.XXX.XXX netmask 0xffffffff broadcast 82.146.XXX.XXX inet 78.24.XXX.XXX netmask 0xffffffff broadcast 78.24.XXX.XXX inet 78.24.XXX.XXX netmask 0xffffffff broadcast 78.24.XXX.XXX ether XX:XX:XX:XX:XX:XX media: Ethernet autoselect (100baseTX <full-duplex>) status: active lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384 tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500 Opened by PID 564 tun1: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500 Opened by PID 565 Opened by PID 565 My solution for FreeBSD 6 and PHP 5 was: <?php ob_start(); $ips=array(); $ifconfig=system("ifconfig"); echo $ifconfig; $ifconfig=ob_get_contents(); ob_end_clean(); $ifconfig=explode(chr(10), $ifconfig); for ($i=0; $i<count($ifconfig); $i++) { $t=explode(" ", $ifconfig[$i]); if ($t[0]=="\tinet") { array_push($ips, $t[1]); } } for ($i=0; $i<count($ips); $i++) { echo $ips[$i]."\n"; } ?> You will get list of IP adresses in $ips array, like: 82.146.XXX.XXX 78.24.XXX.XXX 82.146.XXX.XXX 82.146.XXX.XXX 82.146.XXX.XXX 78.24.XXX.XXX 78.24.XXX.XXX ---- Server IP: 195.54.192.44 Probable Submitter: 127.0.0.1 ---- Manual Page -- http://www.php.net/manual/en/function.curl-setopt.php Edit -- https://master.php.net/note/edit/84902 Del: integrated -- https://master.php.net/note/delete/84902/integrated Del: useless -- https://master.php.net/note/delete/84902/useless Del: bad code -- https://master.php.net/note/delete/84902/bad+code Del: spam -- https://master.php.net/note/delete/84902/spam Del: non-english -- https://master.php.net/note/delete/84902/non-english Del: in docs -- https://master.php.net/note/delete/84902/in+docs Del: other reasons-- https://master.php.net/note/delete/84902 Reject -- https://master.php.net/note/reject/84902 Search -- https://master.php.net/manage/user-notes.php

« previous php.notes (#143155) next »