phplocalhostdhcp

get DHCP address of connection to router


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.


Solution

  • 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.