[英]How to add extra letters coming out from serialized string in php?
我正在處理php中的序列化字符串,在該字符串中要反序列化時要添加其他字母。
序列化字符串的片段為:
a: 7: {
s: 3: "mon";a: 2: {
s: 5: "start";s: 5: "09:00";s: 3: "end";s: 5: "21:00";
}
s: 3: "tue";a: 2: {
s: 5: "start";s: 5: "09:00";s: 3: "end";s: 5: "21:00";
}
s: 3: "wed";a: 2: {
s: 5: "start";s: 5: "09:00";s: 3: "end";s: 5: "21:00";
}
s: 3: "thu";a: 2: {
s: 5: "start";s: 5: "09:00";s: 3: "end";s: 5: "21:00";
}
s: 3: "fri";a: 2: {
s: 5: "start";s: 5: "09:00";s: 3: "end";s: 5: "21:00";
}
s: 3: "sat";a: 2: {
s: 5: "start";s: 5: "09:00";s: 3: "end";s: 5: "21:00";
}
s: 3: "sun";a: 2: {
s: 5: "start";s: 5: "09:00";s: 3: "end";s: 5: "21:00";
}
}
我用來使上述序列化字符串未序列化的php代碼是:
<?php
$serialized = '';
for ($i = 0; $i < count($data['item']->logistic_out); $i++) {
if(strcmp($data['item']->logistic_out[$i]->logistics_type, "location_pickup") == 0)
{
$serialized .= strtolower($data['item']->logistic_out[$i]->logistics_times);
}
}
if($serialized != '')
{
/*
echo '<span class="font-weight-bold how-can-this-text">' . "how can this item be received" . '</span>';
echo "<br>";
echo "<br>";
echo '<span class="font-weight-bold mb-3 ml-3">' . "pickup from item's location <br/>" . '</span>';
echo "<br>";
echo "<br>"; */
$unserialized = unserialize( $serialized );
foreach($unserialized as $key=>$value)
{
echo $key.": ".$value['start']." ".$value['end']."<br/> <br/>";
}
}
else
{
echo "<p style=\"font-style: italic;\">No information available</p>";
}
?>
問題陳述:
上面的代碼中的echo語句正在生成以下o / p。 我想知道我應該在上面的echo語句中進行哪些更改,以便o / ps具有星期一星期二星期三星期三星期五星期六星期日
您可以轉換為時間戳記,然后提取一周中某天的完整文本表示形式:
echo date('l', strtotime($key));
要將時間從24小時更改為12小時,請執行以下操作:
echo date('g', strtotime($value['end']));
有關所有格式,請參見PHP-日期 。
更新了我的答案。 請檢查
echo date('l', strtotime($key)).": ".$value['start']." ".$value['end']."<br/> <br/>";
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.