鍍金池/ 問答/ PHP問答
淡墨 回答

假如你的日期變量是個(gè)時(shí)間戳,變量名為$datetime
如果是個(gè)字符串,就先轉(zhuǎn)為時(shí)間戳吧
你這里其實(shí)是要顯示3次變量。一個(gè)年,一個(gè)是月,一個(gè)是日。
樓主的意思是在模板里如何顯示這個(gè)變量吧
年{$datetime|date="Y"}
月{$datetime|date="m"}
日{(diào)$datetime|date="d"}

荒城 回答

mysql,mysqli 寫對。兩者不一樣,寫統(tǒng)一。

另外,教使用 mysql,mysqli擴(kuò)展的視頻都不用看,看 pdo 的視頻。

臭榴蓮 回答

.bat 是windows 的腳本
linux 初始化 直接 執(zhí)行 ./init 就可以了
如果沒有權(quán)限 chmod +x init 加個(gè)執(zhí)行權(quán)限就可以了

維她命 回答

ajax的規(guī)則好像是只能傳輸json數(shù)據(jù)吧,以前還有xml的,現(xiàn)在都是用json了。你看下怎么把video轉(zhuǎn)成json對象先,再用ajax傳輸

舊城人 回答

最好還是調(diào)查清楚,什么運(yùn)行時(shí)間長了就卡,是不是打開文件句柄太多了,還是內(nèi)存滿了。

六扇門 回答

控制器中使用try catch捕獲異常,catch中$model->getErrors();看一下異常錯(cuò)誤

嘟尛嘴 回答

目前問題的解決方法:
把 if (!$askuCount) 的代碼放到循環(huán)中即可插入數(shù)據(jù)

建議:
不要用循環(huán)操作數(shù)據(jù)庫,建議用批量插入

拽很帥 回答

//大概這樣,只是個(gè)大概:
if($supplier !==0 ){ //當(dāng)供應(yīng)商不為0時(shí),goods_id使用供應(yīng)商的goods_id

    $where = 'goods_id=supplier_goods';

}else($dealer !== 0){ //當(dāng)經(jīng)銷商不為0時(shí),goods_id使用經(jīng)銷商的goods_id

    $where = 'goods_id=dealer_goods'; 

}
$data = $mysql->query("select * from table where {$where}");
建議將判斷邏輯放在前面,讓SQL一目了然

淡墨 回答

使用CDN,加速視頻。

北城荒 回答

把 composer.lock 刪除了試試重新執(zhí)行試試, 或者用phpstorm一類的IDE將composer.lock 文件轉(zhuǎn)為UTF-8 字符編碼再試試

愚念 回答

https://github.com/aferrandin...

\PHPQRCode\QRcode::png("<需要生成二維碼的字符串>", "/tmp/qrcode.png", 'L', 4, 2);

這個(gè)就會生成PNG的二維碼到/tmp/qrcode.png目錄

久不遇 回答

感謝邀請,根據(jù)題主描述應(yīng)該是想實(shí)現(xiàn)一個(gè)定時(shí)器的任務(wù),而不是時(shí)間線的問題。我的思路是這樣的,首先JOB執(zhí)行程序最大時(shí)間應(yīng)該高于30min,30min鐘執(zhí)行完成后,在JOB本身進(jìn)行狀態(tài)的判斷。網(wǎng)上有相關(guān)代碼(其中腳本51上就有,所以不再說了)。其次是你要寫一個(gè)php文件可以運(yùn)行在cli模式下,用"php XXX.php start -d"然后每隔兩分鐘檢測一下你運(yùn)行中的JOB是否完成,進(jìn)而判斷是否進(jìn)入下一個(gè)狀態(tài),還是提醒你手動創(chuàng)建C1任務(wù)。

不討囍 回答

可以使用夜影的答案,利用模型對模型的關(guān)系"渴求式加載"。這種方式會查詢出article表中的所有字段。如果article表的字段數(shù)不多還是可以的。但是如果字段很多并且你需要的只是一小部分就還是使用用戶的id字段進(jìn)行關(guān)聯(lián)吧。

臭榴蓮 回答

PHP配置文件里搜索zlib.output_compression

把;去掉

然后Off改成On

重啟PHP

大濕胸 回答

問題描述

設(shè)有編號為1,2,……,n的n(n>0)個(gè)人圍成一個(gè)圈,從第1個(gè)人開始報(bào)數(shù),報(bào)到m時(shí)停止報(bào)數(shù),報(bào)m的人出圈,再從他的下一個(gè)人起重新報(bào)數(shù),報(bào)到m時(shí)停止報(bào)數(shù),報(bào)m的出圈,……,如此下去,直到所有人全部出圈為止。當(dāng)任意給定n和m后,設(shè)計(jì)算法求n個(gè)人出圈的次序。

最后剩下的結(jié)點(diǎn)就是勝利者

問題思路

題中的方法是利用歸納過的公式

clipboard.png

推到過程:

clipboard.png

參考:約瑟夫問題

影魅 回答

不必要更新所有數(shù)據(jù),因?yàn)槿绻潞芏嗥渌麩o用的數(shù)據(jù)的話,后期如果數(shù)據(jù)很多,會有很多的資源浪費(fèi),因?yàn)槟阋淮尾僮髯疃嗍?條數(shù)據(jù)狀態(tài)的切換,比如,當(dāng)前選中的是4,你想切換到25,其實(shí)是4的state變成0,25的state變成1.所以,你只需要向后臺傳一個(gè)這樣的json:

{
    4:0,
    25:1
}

json_decode 轉(zhuǎn)換之后的數(shù)組格式為這樣

$req = [4=>0,25=>1]

然后foreach處理

foreach($req as $key => $re) {
    $db->where('id', '=', $key)->update(['state' => $re]);
}

因?yàn)樽疃嘀挥袃纱窝h(huán),所以對性能影響并不是很大。

或者可以這樣,需要將數(shù)據(jù)用array_keys ,array_values 處理一下。


/**
 * update `表名` set state = case id
 *      when 4 then 0
 *      when 25 then 1
 * end where id in (4,25)
 * @param $table 表名
 * @param $conditions_field 條件字段,此處為 id
 * @param $values_field  需要被更新的字段 ,此處為state
 * @param $conditions 條件 [4,25]
 * @param $values    被更新的值 [0,1]
 * @return int
 */
public function batchUpdate($table,$conditions_field, $values_field, $conditions, $values)
{
    $sql   = 'update ' . $table . ' set '. $values_field .' = case ' .$conditions_field;
    foreach ($conditions as $key => $condition) {
        $sql .= ' when ' . $condition . ' then ?';
    }
    $sql .= ' end where id in (' . implode(',', $conditions) . ')';
    return $db->update($sql, $values);
}
互擼娃 回答

Perferences->Editor->General-> Auto Import 選擇開啟自動引入命名空間。

clipboard.png

只愛你 回答

我猜你數(shù)據(jù)庫用的是192.168開頭的這種局域網(wǎng)IP段?

信息給的太少只能猜了……