我有时间字符串,如PT19H15M,PT10H,PT5M等。
PT19H15M等于19:15 PT10H等于10:00 PT5M等于00:05
我希望将每个字符串转换为正常时间。
是否有任何内置方法
答案 0 :(得分:6)
这些格式为ISO 8601 durations,受DateInterval
支持,其方便format
。
例如:
<div class="modal fade" id="myEdit" role="dialog">
<div class="modal-dialog">
<form class="well contact-form" method="post" action="{% url 'up'}">
{% csrf_token %}
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">Modal Header</h4>
</div>
<div class="modal-body">
<label for="usr">Name:</label>
<input type="text" class="form-control" required="" name="uss" value="{{ instance.name }}" id="uss">
<label for="pwd">Password:</label>
<input type="password" class="form-control" required="" value="{{ instance.sname }}" name="pwd" id="pwd" >
</div>
<div class="modal-footer">
<button type="submit" class="btn btn-default">Valider</button>
<button value="" type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
</form>
</div>
</div>
将输出:
echo (new DateInterval("PT19H15M"))->format("%H:%I");
请注意,其中的“PT”不代表太平洋时间。 P代表周期并表示持续时间表示的开始,而T表示时间部分的开始 - 年,月等也支持,例如, P2YT19H将是2年19小时。