Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
880 views
in Technique[技术] by (71.8m points)

php - Is $_SERVER['REMOTE_ADDR'] always isset()?

I want to store ip2logn($_SERVER['REMOTE_ADDR']) values in the db for some reason.

Practically, as I see, $_SERVER['REMOTE_ADDR'] always has a value. Could anybody confirm it is always set for any user and can't be not set by any reason?

The reason I ask it is to be sure I should choose NOT NULL instead of DEFAULT NULL for the column in MySQL Table.

So, I can store ipaddressvarchar(15) NOT NULL (yes, NOT null) or ip2longaddress int(11) NOT NULL, and the second option is, as I understand, the most preferable.

Thank you.

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

It will only be set if you're running the script through a webserver. If you're running PHP in CLI (command line) mode, REMOTE_ADDR will not be set, as there is no remote address for a command line script.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...