鍍金池/ 問答/ PHP問答
悶油瓶 回答

這樣?

function test()
{

    $res = $this
        ->erp_base
        ->select([
            'company_id AS city_id',
            'city_name AS city_name',
            'UNIX_TIMESTAMP() AS create_time',
            'UNIX_TIMESTAMP() AS update_time',
        ])
        ->where([
            'if_deleted =' => 0,
        ])
        ->where_not_in('company_id', $this->_blacklist)
        ->get('company')
        ->result_array();

    return $res;
    
}

基本是照jQ的鏈?zhǔn)侥敲磳懙?。不過我一般都是用編輯器的格式化插件自動(dòng)對(duì)齊(VSCode+phpfmt+php runtime)……無所謂優(yōu)雅,見仁見智吧。

未命名 回答

driving.search(start, end, {waypoint: arr}) 有三個(gè)參數(shù),start:起點(diǎn); end:終點(diǎn); {waypoint:arr} 途經(jīng)點(diǎn),將途經(jīng)點(diǎn)數(shù)組放進(jìn)第三個(gè)參數(shù)里面即可以根據(jù)指定定位點(diǎn)繪制出路徑規(guī)劃

魚梓 回答

1.開一個(gè)server來處理任務(wù),綁定Task和Finish事件,server監(jiān)聽某個(gè)投遞任務(wù)的消息
2.php-fpm/apache環(huán)境下只能使用同步客戶端,向server發(fā)送個(gè)投遞任務(wù)消息,server收到后投遞任務(wù)
3.在server的Task事件中處理任務(wù),任務(wù)處理完后觸發(fā)Finish事件,做一些任務(wù)完成后的操作。

可以參考LaravelS對(duì)于任務(wù)的隊(duì)列的封裝方式:異步的任務(wù)隊(duì)列

茍活 回答

簡(jiǎn)單方法

 php -i | grep Configuration\ File

結(jié)果

[root@******** /root]# php -i | grep Configuration\ File
Configuration File (php.ini) Path => /usr/local/php7.1/etc
Loaded Configuration File => (none)
心夠野 回答

外面包一個(gè)try catch,重要的話做重試3次。目前這樣可以解決,除非db崩了,沒有出現(xiàn)過retry 3次還error的

雨蝶 回答

可以試下這個(gè)方案,步驟如下:
1.先新建一個(gè)分支git checkout -b hotfix
2.git reflog看下log記錄,回退之前的提交點(diǎn)的log也可以看到
3.找到回退之前的提交點(diǎn),git reset - -hard重新回退回去,找到那個(gè)文件,拷貝出來,再切換到原來的分支,加進(jìn)去重新commit就可以啦

賤人曾 回答

你這個(gè)流程錯(cuò)誤了吧,應(yīng)該是b用戶如果沒有關(guān)注,那么彈出。判斷是否關(guān)注應(yīng)該簡(jiǎn)單這個(gè)有接口,彈窗的話不是有前端來做嗎,這個(gè)也不復(fù)雜

不討囍 回答

你可以在授權(quán)登錄成功獲取到openid的時(shí)候,然后綁定并保存在cookie中,在需要驗(yàn)證登錄的頁面驗(yàn)證是否有這個(gè)cookie值就好了

祉小皓 回答

你的域名應(yīng)該是沒有加入到 Valid OAuth Redirect URIs 里面,估計(jì)你只在設(shè)置里面加入了.

clipboard.png

尕筱澄 回答

對(duì)數(shù)字區(qū)間通常是分段寫正則,例如12-128,分成:12-19, 20-99, 100-119,120-128:/^((1[2-9])|([2-9][0-9])|(1[01][0-9])|(12[0-8]))$/

對(duì)于更復(fù)雜的,還是直接提取數(shù)字,然后if/else判斷吧,簡(jiǎn)單的正則+簡(jiǎn)單的判斷總比復(fù)雜的正則好。

枕邊人 回答

1.APi 首先注重的是安全方面的信息 所以加key和sign是必須可少的。
2.APi 與對(duì)方定義好入?yún)⒑统鰠?,定義好格式(最好提前書寫好wiki)
3.你們這邊應(yīng)該還回有數(shù)據(jù)庫(kù)操作,書寫業(yè)務(wù)邏輯,事務(wù)和回滾機(jī)制要做好
4.要有日志,要有監(jiān)控,報(bào)警系統(tǒng)。
5.寫接口,記得連接好PDO的來處理,防止sql注入等問題。
6.至于并發(fā)問題,你們可以在nginx層做處理,從DNS方面處理,PHP這塊無需過多關(guān)注
7.API擴(kuò)展,把功能模塊單獨(dú)組裝,看是否需要redis,memcache,yac這種緩存服務(wù)。
8.單獨(dú)拉出來幾臺(tái)服務(wù)器跑API,還有就是做好防止接口被刷,你們監(jiān)測(cè)節(jié)點(diǎn),如果某個(gè)IP防止有問題,就引流到獨(dú)立的一臺(tái)服務(wù)器(這臺(tái)服務(wù)器不參與業(yè)務(wù))等等,
9.你們可以考慮下消息隊(duì)列,同步服務(wù),swoole、rabbitMQ供你參考
總結(jié):最主要來看1.安全 2.日志 3.業(yè)務(wù)邏輯 4.nginx層處理 5.穩(wěn)定性

愚念 回答

$("#allChoose").click(function(){

    $(".chooseSingle").prop("checked",this.checked);
})
$(".chooseSingle").click(function(){
    var flag=true;
    $(".chooseSingle").each(function() {
        if (!this.checked) {
            flag=false;
        };
    });
     $("#allChoose").prop("checked",flag);
  })
伐木累 回答

可以使用getimagesize函數(shù)獲取圖片尺寸

怪痞 回答

select

(select value from a where stime = (select max(stime) from a))
- 
(select value from a where stime = (select min(stime) from a));
筱饞貓 回答

emmmmm, 你login.html里有指定 <form action="login.php">嗎。

九年囚 回答

假設(shè)我要做幾道菜:

  1. 麻婆豆腐
  2. 素炒小青菜
  3. 西紅柿炒蛋

以前我的做法:
我要做麻婆豆腐,先洗豆腐,然后找到豆瓣醬,把豆瓣醬炸出香味,然后我想到還需要辣椒,我就去切辣椒,切完辣椒放進(jìn)去后,我發(fā)現(xiàn)還需要姜蒜,我去切了姜蒜,然后和燒好的豆瓣醬一起煎出香味,倒入豆腐翻兩圈開始燜。
燜好麻婆豆腐之后,我要素炒小青菜。
我立即去洗小青菜,然后燒好油后發(fā)現(xiàn)還少了姜蒜,我就去切姜蒜,一陣手忙腳亂,小青菜炒好了。
如此重復(fù)進(jìn)行炒西紅柿炒蛋。

有了SOA之后:
我先剁好一小碗姜末;
我先剁好一小碗蒜末;
先切好青菜
先找好豆瓣醬
先洗好豆腐
先切好西紅柿

然后,我想要什么服務(wù),直接取。(嗯,這里可能來說是一個(gè)人的SOA)
后來,我為了想提高效率,叫我老婆來一起幫忙準(zhǔn)備這些材料,后面,突然有10個(gè)朋友來我家,要做的菜式更多了,然后我叫幾個(gè)朋友一起幫準(zhǔn)備各種材料。

這里面的思想還可以發(fā)散。后面的不想說了。


我想了一下,再補(bǔ)充一下

對(duì)于第一種情況,假設(shè)我每種菜要做10份,那么再叫來9個(gè)人和我一起重復(fù)上面的事情(多個(gè)服務(wù)器部署同一套系統(tǒng))
而后面有了SOA,我每一個(gè)人就只關(guān)注自己的具體邏輯,比如切青菜的專門切青菜,洗青菜的專門洗青菜等等,對(duì)于廚師(用戶),想要做一份西紅柿炒蛋,那他就去拿西紅柿和打好的蛋就好了,如果想做個(gè)西紅柿燜大腸,那么他就取取切好的西紅柿和切好的大腸就好了,分工明確,各司其職。

赱丅呿 回答

上面說的都是apache配置,這里我提供另外一種思路
可以通過apache指定http訪問一個(gè)目錄下 index.html
然后 文件利用

<meta http-equiv="refresh" content="0; url=https://www.xxx.com/" />

即可跳轉(zhuǎn)

執(zhí)念 回答

CookieHttp協(xié)議的補(bǔ)充部分,主要是為了解決標(biāo)記用戶狀態(tài)的問題(比如登錄狀態(tài),通常用于MVC程序中),但HTTP接口通常應(yīng)設(shè)計(jì)成無狀態(tài)的,以方便擴(kuò)展,所以不應(yīng)該使用Cookie,沒有必要也不安全。

赱丅呿 回答

把你的sources.list文件貼出來看看,如果你用的是鏡像倉(cāng)庫(kù)的話,懷疑只是你的鏡像倉(cāng)庫(kù)還沒有同步完官方倉(cāng)庫(kù),只需要等待鏡像站同步完成或者換一個(gè)倉(cāng)庫(kù)即可。如果你用了第三方倉(cāng)庫(kù),那么需要檢查下有沒有依賴沖突。