亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

始終將日期時間保存到 DB codeigniter 1970

始終將日期時間保存到 DB codeigniter 1970

PHP
慕斯709654 2022-12-23 16:10:25
我有一個代碼可以在數據庫中保存發布日期,但它總是更改為 1970/01/01 07:00 am 我使用 codeigniter 框架,這是我的視圖代碼            <div class="form-group">                <label class="control-label col-md-2">Publish Date</label>                <div class="col-md-10">                    <div class="input-group date form_datetime bs-datetime" data-date-format="yyyy-mm-dd HH:ii">                        <input type="text" name="form[date]" class="form-control" readonly="">                        <span class="input-group-addon">                            <button class="btn default date-reset" type="button">                                <i class="fa fa-times"></i>                            </button>                        </span>                        <span class="input-group-addon">                            <button class="btn default date-set" type="button">                                <i class="fa fa-calendar"></i>                            </button>                        </span>                    </div>                </div>            </div>這是我的控制器$form = $this->input->post('form');$data['PUBLISH'] = date('Y/m/d H:i a', strtotime($form['date']));當我打印時$form['date'],結果是正常的,但是當我$form['date']以日期格式轉換時,它是錯誤的錯誤在哪里?
查看完整描述

1 回答

?
臨摹微笑

TA貢獻1982條經驗 獲得超2個贊

看起來您的輸入名稱和數組鍵不一致(“日期”與“日期”)。

Unix 時間戳相對于 1970 年 1 月 1 日,因此這是時間戳 0 的值。未定義的數組鍵將導致值為 null(并且可能在日志中出現通知/警告)。strtotime當第一個參數為 null 時將返回 false,當傳遞給 null 時將被轉換為 0 date,因此日期為 1970/01/01。

編輯

從您在評論中的附加信息來看,問題是您提供的日期格式無法被strtotime. 您將需要使用不同的方法來解析您期望的格式。

您可以使用DateTime::createFromFormat解析特定格式,然后使用DateTime::format所需格式存儲它。例如:

$date=DateTime::createFromFormat("d F Y - H:i", $form["date"]);
$data["PUBLISH"]=$date->format("Y/m/d H:i a");


查看完整回答
反對 回復 2022-12-23
  • 1 回答
  • 0 關注
  • 97 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號