I run MAMP to do local wordpress development and for various reasons I need to access the sites via something like http://192.162.1.99:8888
rather than http://localhost:8888
. This is generally not a problem whilst on my own connection as I always connect with the same IP. However when out and about I have to mess about and change various constants to reflect the IP I'm on with that router.
So is there a technique using PHP that can ascertain this DHCP address? Nothing within $_SERVER
returns this address, ['SERVER_ADDR']
& ['REMOTE_ADDR']
contain ::1
and ['HTTP_HOST']
contains localhost:8888
.
Likely not the cleanest solution, but if you are running Linux/Unix you can run the below php system call in your script. I have not tested it but I believe it will provide you with the correct IP in the variable. Just remember to switch en1 with your actual ethernet/wireless adapter name for your system. You may also need to use the exact path to the ifconfig command.
$ipAddress = system('ifconfig en1 | grep inet | cut -d" " -f2' , $returnVal);
Sorry if the variable names are not in the php standard, I normally develop in Java these days.