empty,isset不是函數(shù)
$client->__getFunctions (); //獲取接口上能用的方法
$client->__getTypes(); //獲取方法的鍵名 非常重要
用這2個(gè)方法看看接口那邊要的參數(shù)格式和鍵名是啥,soap的接口很奇怪的
$(document).ready(function () {
var $texta = $('#my-textarea');
var lastWidth = localStorage.getItem("my-area-width");
var lastHeight = localStorage.getItem("my-area-height");
if(lastWidth && lastHeight) {
$texta.css("width",lastWidth+"px");
$texta.css("height",lastHeight+"px");
}
$texta.data('x', $texta.outerWidth());
$texta.data('y', $texta.outerHeight());
$texta.mouseup(function () {
var $this = $(this);
var width = $this.outerWidth();
var height = $this.outerHeight();
if (width != $this.data('x') || height != $this.data('y')) {
alert(width + ' - ' + $this.data('x') + '\n' + height + ' - ' + $this.data('y'));
localStorage.setItem("my-area-width",width);
localStorage.setItem("my-area-height",height);
}
$this.data('x', width);
$this.data('y', height);
});
});如果很多網(wǎng)站都有這個(gè)現(xiàn)象,那估計(jì)是你chrome的某個(gè)插件導(dǎo)致的,插件是可以注入js代碼的,所以有可能在你打開(kāi)的每個(gè)網(wǎng)站上都做一些操作,你可以挨個(gè)禁用chrome插件看看是哪個(gè)插件導(dǎo)致的。
可以唄,你做好API接口就行了,然后把結(jié)果拼起來(lái)就好了
http自定義header主要是為了安全考慮,可以把一些token認(rèn)證信息放在header請(qǐng)求頭里,模擬真實(shí)用戶。
使用場(chǎng)景:
1、api的授權(quán)認(rèn)證
2、爬蟲(chóng)偽造header頭信息
3、跨域設(shè)置
當(dāng)你決定使用存儲(chǔ)過(guò)程的時(shí)候,那么整個(gè)事務(wù)是在MYSQL端完成的。
對(duì)于事務(wù)競(jìng)爭(zhēng)優(yōu)化的主要一點(diǎn)就是減少事務(wù)鎖時(shí)間。
你選擇了使用存儲(chǔ)過(guò)程就可以不用再代碼中開(kāi)啟事務(wù),深度優(yōu)化即將事務(wù)SQL在MYSQL端執(zhí)行(存儲(chǔ)過(guò)程)
以下是類似的秒殺事務(wù)落地的存儲(chǔ)過(guò)程
-- 秒殺執(zhí)行存儲(chǔ)過(guò)程
DELIMITER $$ -- ; 轉(zhuǎn)換為 $$
-- 定義存儲(chǔ)過(guò)程 in 輸入?yún)?shù) out 輸出參數(shù)
-- ROW_COUNT 返回上一條修改類型sql(delete、insert、update)的影響函數(shù)
-- row_count 0 未修改數(shù)據(jù) >0修改的函數(shù) <0 SQL錯(cuò)誤、未執(zhí)行修改sql
CREATE PROCEDURE `seckill`.`execute_seckill`
(in v_seckill_id bigint,in v_phone bigint,
in v_kill_time TIMESTAMP ,out r_result int)
BEGIN
DECLARE insert_count int DEFAULT 0;
START TRANSACTION ;
insert ignore into success_killed
(seckill_id,user_phone,create_time)
VALUES (v_seckill_id,v_phone,v_kill_time)
select ROW_COUNT() into insert_count;
if (insert_count = 0) THEN
ROLLBACK;
set r_result = -1;
ElSEIF(insert_count < 0) THEN
ROLLBACK;
set r_result = -2;
ELSE
UPDATE seckill
set number = number - 1
where seckill_id = v_seckill_id
and end_time > v_kill_time
and start_time < v_kill_time
and number > 0;
SELECT row_count() into insert_count;
if (insert_count = 0) THEN
ROLLBACK;
set r_result = 0;
ElSEIF(insert_count < 0) THEN
ROLLBACK;
set r_result = -2;
ELSE
COMMIT;
SET r_result = 1;
END if;
END if;
END;
$$
-- 存儲(chǔ)過(guò)程定義結(jié)束
DELIMITER ;
set @r_result=-3;
-- 執(zhí)行存儲(chǔ)過(guò)程
call execute_seckill(1003,18820116735,now(),@r_result);
-- 獲取結(jié)果
select @r_result;
這屬于并發(fā)優(yōu)化的階段了,不要過(guò)度依賴存儲(chǔ)過(guò)程,其一般用于簡(jiǎn)單的邏輯
bind對(duì)象進(jìn)去就行了setInterval(test.all.bind(test),1000);
1、修改下提問(wèn)的排版吧
2、你可以通過(guò)頁(yè)面 看一下提交的方式,如果是$name[]的方式 你在后端獲取的時(shí)候肯定是數(shù)組的形式,如果想要一個(gè)個(gè)的話,那就設(shè)置n多個(gè)name吧
你說(shuō)的掛掉是一個(gè)請(qǐng)求失敗還是整個(gè)進(jìn)程死了?
如果一個(gè)一個(gè)請(qǐng)求失敗的話. 檢查是不是程序有使用長(zhǎng)連接. redis. mysql 之類的. 有可能是連接空閑時(shí)間過(guò)長(zhǎng). 被斷開(kāi)了.
試試這個(gè)修改過(guò)的
<?php
function get_weekend_days($start_date, $end_date, $weekend_days=1) {
$data = array();
$start_reduce = $end_add = 0;
$start_N = date('N',strtotime($start_date));
$end_N = date('N',strtotime($end_date));
// 進(jìn)行單、雙休判斷,默認(rèn)按單休計(jì)算
$weekend_days = intval($weekend_days);
switch ($weekend_days)
{
case 2:
in_array($end_N,array(6,7)) && $end_add = ($end_N == 7) ? 2 : 1;
$start_reduce = ($start_N == 7) ? 1 : 0;
break;
case 1:
default:
$end_add = ($end_N == 7) ? 1 : 0;
break;
}
$days = ((strtotime($end_date) - strtotime($start_date))/86400) + 1;
$data['total_days'] = $days;
$data['total_relax'] = floor(($days + $start_N - 1 - $end_N) / 7) * $weekend_days - $start_reduce + $end_add;
return $data;
}
echo "Two days per week\n";
var_dump( get_weekend_days("2018-03-31","2018-04-08",2));
var_dump( get_weekend_days("2018-04-01","2018-04-08",2));
var_dump( get_weekend_days("2018-04-02","2018-04-08",2));
var_dump( get_weekend_days("2018-04-07","2018-04-08",2));
var_dump( get_weekend_days("2018-04-08","2018-04-08",2));
echo "One day per week\n";
var_dump( get_weekend_days("2018-03-31","2018-04-08",1));
var_dump( get_weekend_days("2018-04-01","2018-04-08",1));
var_dump( get_weekend_days("2018-04-02","2018-04-08",1));
var_dump( get_weekend_days("2018-04-07","2018-04-08",1));
var_dump( get_weekend_days("2018-04-08","2018-04-08",1));
單頁(yè)面可以出來(lái),你把路由的設(shè)置貼出來(lái),看一下
<?php
/**
* 分配函數(shù)
*
* @author Flc <2017-12-07 22:14:12>
* @link http://flc.ren
* @param array $couriers 快遞員
* @param array $packages 包裹
* @return array key為快遞員;值為包裹
*/
function dist($couriers = [], $packages = [])
{
$couriers = array_values($couriers);
$packages = array_values($packages);
$courier_count = count($couriers);
$result = [];
foreach ($packages as $key => $package) {
$remainder = ($key + 1) % $courier_count;
$sub = ($remainder ?: $courier_count) - 1;
$result[$couriers[$sub]][] = $package;
}
return $result;
}
$arr1 = ['p1', 'p2', 'p3', 'p4', 'p5', 'p6', 'p7'];
$arr2 = ['b1', 'b2', 'b3', 'b4', 'b5', 'b6', 'b7', 'b8', 'b9', 'b10'];
print_r(dist($arr1, $arr2));
結(jié)果如下:
Array
(
[p1] => Array
(
[0] => b1
[1] => b8
)
[p2] => Array
(
[0] => b2
[1] => b9
)
[p3] => Array
(
[0] => b3
[1] => b10
)
[p4] => Array
(
[0] => b4
)
[p5] => Array
(
[0] => b5
)
[p6] => Array
(
[0] => b6
)
[p7] => Array
(
[0] => b7
)
)1、請(qǐng)求異步加載,限制并發(fā)請(qǐng)求數(shù)量,別一次發(fā)送多個(gè)請(qǐng)求,就算是多個(gè),記住一定要異步
2、圖片的路徑添加通過(guò)文檔加載完畢后在js中添加圖片路徑,因?yàn)轫?yè)面加載時(shí)遇到img標(biāo)簽會(huì)去加載圖片,圖片較大的話加載時(shí)間就長(zhǎng),可以全文先用一張圖片先占位,最后再通過(guò)js更改圖片路徑
3、使用CDN,特別是大圖片就更需要CDN了,不然請(qǐng)求很慢
PHP7.1以上才支持強(qiáng)制類型,要么更新PHP版本,要么改動(dòng)這個(gè)庫(kù)了
1.explode第三個(gè)參數(shù)可以指定切割數(shù)量, 達(dá)到數(shù)量后后續(xù)的就不再切割了
$s= 'aaa 2018-02-24 08:38:37';
print_r(explode(' ', $s, 2));
2.insert into xx(id) values (1),(2),(3)就可以一次性插入3條,比執(zhí)行3條sql性能好很多,但要注意不能拼一條很長(zhǎng)的sql,會(huì)超過(guò)max_allowed_packet
你服務(wù)器上面有沒(méi)有安裝crul擴(kuò)展?
同意樓上的說(shuō)法.
你搜 css pagebreak 。這個(gè) css 屬性可以讓打印機(jī)換頁(yè)的。
$this->info這個(gè)數(shù)組對(duì)象已經(jīng)定義了么
trace這個(gè)模型的namespace沒(méi)問(wèn)題么
北大青鳥(niǎo)APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國(guó)IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國(guó)家
達(dá)內(nèi)教育集團(tuán)成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機(jī)構(gòu),是中國(guó)一站式人才培養(yǎng)平臺(tái)、一站式人才輸送平臺(tái)。2014年4月3日在美國(guó)成功上市,融資1
北大課工場(chǎng)是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國(guó)家深化產(chǎn)教融合/校企合作的政策,積極推進(jìn)“中國(guó)制造2025”,實(shí)現(xiàn)中華民族偉大復(fù)興的升級(jí)產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國(guó)職業(yè)人才培訓(xùn)領(lǐng)域的先行者
曾工作于聯(lián)想擔(dān)任系統(tǒng)開(kāi)發(fā)工程師,曾在博彥科技股份有限公司擔(dān)任項(xiàng)目經(jīng)理從事移動(dòng)互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍(lán)懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負(fù)責(zé)iOS教學(xué)及管理工作。
浪潮集團(tuán)項(xiàng)目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺(tái)面向?qū)ο箝_(kāi)發(fā)經(jīng)驗(yàn),技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點(diǎn)難點(diǎn)突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫(kù),具有快速界面開(kāi)發(fā)的能力,對(duì)瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁(yè)制作和網(wǎng)頁(yè)游戲開(kāi)發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開(kāi)發(fā)經(jīng)驗(yàn)。曾經(jīng)歷任德國(guó)Software AG 技術(shù)顧問(wèn),美國(guó)Dachieve 系統(tǒng)架構(gòu)師,美國(guó)AngelEngineers Inc. 系統(tǒng)架構(gòu)師。