如何用UNIX时间戳替换人类可读的日期字符串?
How can I replace human-readable date strings with UNIX timestamps?
我有一个非常大的txt文件javascript数组-太大了,我去分别编辑每个条目。它看起来像这样:
["12/1/2011 00:00",15848],["12/1/2011 01:00",15108],["12/1/2011 02:00",14643],["12/1/2011 03:00",14265], &c.
我如何通过PHP传递这个文件来改变所有的日期并写一个新文件?我想我需要使用strptime()
或strtotime()
,但我不确定如何进行。
日期格式为Month/Day/Year
。
编辑:我最终从CSV文件中重新创建了数组。这是我使用的代码,以防有人感兴趣。谢谢你的帮助。
$handle = fopen("stuff.csv", "r");
while(($data = fgetcsv($handle, ",")) !== FALSE) {
echo "[" . strtotime($data[0]) . ", " . $data[1] . "],<br />";
}
用正则表达式匹配字符串中的所有日期,然后对结果使用strtotime():
$str = '["12/1/2011 00:00",15848],["12/1/2011 01:00",15108],["12/1/2011 02:00",14643],["12/1/2011 03:00",14265]';
$p = '#('d+/'d+/'d{4}'s'd{2}:'d{2})#';
preg_match_all($p, $str, $matches);
foreach ($matches[1] as $m) {
echo strtotime($m) . "'n";
}
UPDATE:刚刚意识到你说你的数据是在一个javascript数组。你也可以在JS中轻松地处理这个问题:
var new_times = [];
var times = [["12/1/2011 00:00",15848],["12/1/2011 01:00",15108],["12/1/2011 02:00",14643],["12/1/2011 03:00",14265]];
for(i=0; i < times.length; i++) {
var d = new Date(times[i][0]);
var new_arr = [(d.getTime() / 1000), times[i][1]];
new_times.push(new_arr);
}
javascript
var times = [["12/1/2011 00:00",15848],["12/1/2011 01:00",15108],["12/1/2011 02:00",14643],["12/1/2011 03:00",14265]];
//var d = new Date(year, month, day, hours, minutes, seconds, milliseconds);
for(i in times) {
var time = times[i][0].split(/'/|'s|:/i);
console.log(time);
date = new Date(time[2], time[0], time[1], time[3], time[4]);
console.log(date.getTime());
}
相关文章:
- 在JavaScript中拆分日期字符串的更好方法是什么
- 用Javascript重新格式化复杂文本日期字符串的更好方法
- 如何将日期字符串视为格式化数组[EYEAR,MONTH,DAY]
- 分析特定区域设置(而不是时区!)中的日期字符串
- PHP strtotime()为JavaScript日期字符串返回false
- 如何将毫秒转换为日期字符串
- 正在使用日期字符串初始化javascript日期对象
- 新Date()javascript的日期字符串
- 使用moment.js分析日语日期字符串
- 将日期字符串转换为数字以进行比较
- 分析具有不同日期格式的日期字符串
- 将带有 AM/PM 的日期字符串转换为 javascript 日期对象
- 将日期字符串转换为另一种语言
- 日期 ISO 日期字符串问题
- JavaScript 时刻格式日期字符串
- Javascript使用php日期字符串显示2014年而不是2013年
- MomentJS从日期字符串解析午夜本地
- Javascript Date对象到日期字符串
- 如何使用Javascript将iOS日期字符串转换为格式化日期
- 将日期字符串隐藏到日期对象中