No. The date will be displayed according to the server's time and timezone, not the user's.
You can offer an option on your site to allow the user provide his/her timezone (or attempt to use geolocation based on the IP) and adjust the output according.
According to this post, reliably determining the user's timezone may not be possible, so for best results, you may need to get input from the user.
EDIT (Based on the request for more information in the comments)
If you need to output the selected timezone, you can use one of the following options:
echo date('e'); // Examples: UTC, GMT, Atlantic/Azores (Available in version 5.1.0 and later
echo date('O'); // Different in Greenwich meantime. Example: +0200
echo date('T'); // Timezone abbreviation. Examples: EST, MDT ...
See the date manual page for more information.
EDIT 2:
To "print the date to a specified timezone" you will need to:
- Get the current date as a timestamp (
time()
)
- Get the user's timezone offset
- Use mktime to add or subtract the user's offset as needed.
- Convert the result back to human-readable format using
date()
.