In actual development, we often need to convert the time format into text format in order to better display or store data. PHP is a widely used language, and PHP provides many tools and functions to process time.
This article will introduce in detail how to use PHP to convert time format to text format.
1. PHP’s built-in time function
Before using PHP to convert time format to text format, you need to make sure you have some basic understanding of PHP’s built-in time function. The following are some commonly used functions:
Example:
echo date("Y-m-d"); // 输出当前日期 echo date("Y-m-d H:i:s", 1534949251); // 输出 2018-08-22 10:47:31
Example:
echo time(); // 输出当前时间戳
Example:
echo strtotime('2018-08-22 10:47:31'); // 输出 1534949251
The above are some commonly used PHP time functions. Next we will use these functions to convert the time format to text format.
2. Convert the timestamp into a friendly time text format
Normally, we want to convert the timestamp into a more friendly time format, such as "1 hour ago", "Yesterday" ”, “7 days ago” and so on. A combination of PHP time functions can accomplish this task conveniently.
The following is an example of converting a timestamp into a friendly time text format:
function friendly_date($timestamp) {
$current_time = time(); $delta_time = $current_time - $timestamp; if ($delta_time < 60) { return '刚刚'; } elseif ($delta_time < 3600) { $min = floor($delta_time / 60); return $min . '分钟前'; } elseif ($delta_time < 86400) { $hour = floor($delta_time / 3600); return $hour . '小时前'; } elseif ($delta_time < 604800) { $day = floor($delta_time / 86400); if ($day == 1) { return '昨天'; } else { return $day . '天前'; } } else { return date('Y-m-d', $timestamp); }
}
This The function converts the timestamp into a text description, such as "3 hours ago". If the time is within one minute from the current time, "just now" is returned; if the time is within one hour from the current time, "xx minutes ago" is returned; if the time is within one day from the current time, "xx hours ago" is returned ; If the time is within one week from the current time, return "yesterday" or "xx days ago"; if the time is more than one week from the current time, return the date in the format of "year-month-day".
3. Convert the timestamp to a specified text format
If we need to format the time into a specified date and time format, we can use the date() function. The first parameter of the date() function is used to specify the output format. For example, "Y-m-d H:i:s" means year-month-day hour:minute:second format.
The following is an example of outputting the timestamp in the specified format:
function format_date($timestamp, $format = 'Y-m-d H:i:s') {
return date($format, $timestamp);
}
The above function will output the timestamp in the specified format. If no date format is specified, the "Y-m-d H:i:s" format is used by default. The output format can be customized as needed.
4. Convert the time string into a text format in the specified format
If we already have a date and time string, we can use the strtotime() function to convert it into a timestamp, and then Use the date() function to format it into text in a specified format.
The following is an example of converting a date and time string into text in a specified format:
function format_date_str($date_str, $format = 'Y-m-d H:i:s') {
$timestamp = strtotime($date_str); return date($format, $timestamp);
}
The above function will output the date and time string in the specified format. If no date format is specified, the "Y-m-d H:i:s" format is used by default.
Summary:
This article introduces how to use PHP to convert time format to text format. By using PHP's built-in time function, we can quickly convert timestamps into friendly text or text in a specified format. In actual development, you can use the above two methods as needed to format the time into a text format more suitable for display and storage.
The above is the detailed content of How to convert time format to text format using PHP. For more information, please follow other related articles on the PHP Chinese website!