上面的已經(jīng)說得很清楚了
preg_replace — 執(zhí)行一個(gè)正則表達(dá)式的搜索和替換
http://php.net/manual/zh/func...
你使用的laravel的加密函數(shù)貼出來
https://github.com/vzglad-smerti/password_hash
你想學(xué)習(xí)這兩種模式,你得知道這兩種模式是什么,這兩年最火的莫過于vue.js了,在mvvm中,沒有dom這一概念,所有的交互都是通過控制來實(shí)現(xiàn)的。想學(xué)習(xí)這個(gè),首先得摸熟原生js,其次你得擺脫jquery的束縛,因?yàn)関ue.js是完全不用jquery的。
如果非要說其它語言的話,你得看看es6,別的就不用了,當(dāng)然前提是html5,css3,原生js都得會(huì)的情況下。
不用看什么書籍,你去把官方文檔打一遍,然后看看慕課網(wǎng)上的教程。構(gòu)思的話,你從數(shù)據(jù)入手,不要想著操作dom,也就是操作html里面的內(nèi)容,雙向綁定的東西,html跟著數(shù)據(jù)走的。
模板視圖控制器是相輔相成的,一個(gè)界面的組成肯定要有視圖,然后你用控制器控制,然后制成模板然后調(diào)用,你說的mvc走的就是這個(gè)流程。
docker 和 docker-compose 其實(shí)算是同一種方式,docker 是通過命令行起了一個(gè) docker 容器,而 docker-compose 只是一種容器的編排方式。他們二者都會(huì)起一個(gè)容器,里面跑著 php 的一套環(huán)境,和項(xiàng)目的代碼
同樣 compose 和手動(dòng)安裝也是,手動(dòng)安裝需要下載框架源碼,然后 composer install 安裝框架依賴的 compose 包,而 composer install 則是把這一些事情都給你搞完了。
綜上,如果你自己本地有 PHP 的運(yùn)行環(huán)境的話,則直接 composer install
就可以了,而你本地沒有環(huán)境或者需要安裝新環(huán)境的話則使用 docker-compose。
給你一個(gè)輪子:Element-angular。
他們的做法是:
upload(path: string, file: File): Observable<any> {
const req: HttpRequest<{}> = new HttpRequest('POST', path, file, {
headers: this.headers,
reportProgress: true,
withCredentials: this.withCredentials,
})
return this.http.request(req)
}
直接傳文件,并未做過多的處理。
axios發(fā)出的請求的數(shù)據(jù)格式是json字符串,在調(diào)試工具查看請求頭的時(shí)候可以看到發(fā)送的數(shù)據(jù)為Request Payload
兩種解決方法,一種如上@xialeistudio所說后臺(tái)使用json_decode解碼,還有一種是前端使用querystring或qs轉(zhuǎn)換數(shù)據(jù)格式為Form Data,這樣后臺(tái)就能直接只用$_POST接收參數(shù)
看少俠這代碼,RoomBusiness這個(gè)類應(yīng)該是以單例模式寫的吧,所以兩種方法沒區(qū)別
用的Wordpress嗎,產(chǎn)生這種問題,無非就是將域名硬編碼了。若是域名是配置的話,看看配置文件或者數(shù)據(jù)庫里面的值
login方法中屬性和方法訪問符"->"左右有空格,語法錯(cuò)誤。
你在php.ini 里面把 session.cookie_lifetime 和 session.gc_maxlifetime設(shè)置的超大就行,例如999999999
如果你用nginx,可以利用fastcgi處理
主要用兩個(gè)方法:
//這里寫同步代碼
fastcgi_finish_request();
set_time_limit(0);
//這里寫異步代碼vagrant 和 virtualBox 兩個(gè)最好保持同樣最新版本.
就不會(huì)有問題了.
use Event\Event;
use Event\Select;
$pid_list = [];
$parent_pid = posix_getpid();
for ($i = 0; $i < 4; ++$i)
{
$pair = stream_socket_pair(STREAM_PF_UNIX , STREAM_SOCK_STREAM , STREAM_IPPROTO_IP);
$pid = pcntl_fork();
if ($pid < 0) {
throw new Exception("創(chuàng)建子進(jìn)程失敗");
} else if ($pid > 0) {
// 父進(jìn)程
fclose($pair[0]);
$child = $pair[1];
fwrite($child , "父進(jìn)程問候 " . posix_getpid());
Select::addIo($child , Event::READ , function($ctrl , $socket , $child) use($parent_pid){
$msg = fread($socket , 65535);
echo "父進(jìn)程領(lǐng)域!父進(jìn)程 {$parent_pid} 當(dāng)前執(zhí)行進(jìn)程 " . posix_getpid() . " 消息:{$msg}" . PHP_EOL;
} , $child);
} else {
// 子進(jìn)程
fclose($pair[1]);
$parent = $pair[0];
fwrite($parent , "子進(jìn)程問候 " . posix_getpid());
Select::addIo($parent , Event::READ , function($ctrl , $socket , $parent) use($parent_pid){
$msg = fread($socket , 65535);
echo "子進(jìn)程領(lǐng)域!子進(jìn)程 " . posix_getpid() . " 當(dāng)前執(zhí)行進(jìn)程 " . posix_getpid() . " 消息:{$msg}\n";
} , $parent);
}
}
產(chǎn)生的進(jìn)程信息:
父進(jìn)程:32140
子進(jìn)程:32141 32142 32143 32144
坑人的結(jié)果:
父進(jìn)程領(lǐng)域!父進(jìn)程 32140 當(dāng)前執(zhí)行進(jìn)程 32142 消息 子進(jìn)程問候 32141
父進(jìn)程領(lǐng)域!父進(jìn)程 32140 當(dāng)前執(zhí)行進(jìn)程 32143 消息 子進(jìn)程問候 32142
父進(jìn)程領(lǐng)域!父進(jìn)程 32140 當(dāng)前執(zhí)行進(jìn)程 32144 消息 子進(jìn)程問候 32143
父進(jìn)程領(lǐng)域!父進(jìn)程 32140 當(dāng)前執(zhí)行進(jìn)程 32140 消息 子進(jìn)程問候 32144
子進(jìn)程領(lǐng)域!子進(jìn)程 32141 當(dāng)前執(zhí)行進(jìn)程 32141 消息 父進(jìn)程問候 32140
子進(jìn)程領(lǐng)域!子進(jìn)程 32142 當(dāng)前執(zhí)行進(jìn)程 32142 消息 父進(jìn)程問候 32140
子進(jìn)程領(lǐng)域!子進(jìn)程 32143 當(dāng)前執(zhí)行進(jìn)程 32143 消息 父進(jìn)程問候 32140
子進(jìn)程領(lǐng)域!子進(jìn)程 32144 當(dāng)前執(zhí)行進(jìn)程 32144 消息 父進(jìn)程問候 32140
這得仔細(xì)分析 for 循環(huán)!
Event::$events 添加子進(jìn)程監(jiān)聽事件,子進(jìn)程平行執(zhí)行。對產(chǎn)生的第一個(gè)子進(jìn)程來說, Event::$events 為空,所以沒有拷貝到父進(jìn)程的事件。Event::$events 再次添加監(jiān)聽子進(jìn)程事件,此時(shí),對產(chǎn)生的第二個(gè)子進(jìn)程來說,Event::$events 存在一個(gè)事件!從父進(jìn)程拷貝了一個(gè)事件。Event::$events 再次添加監(jiān)聽子進(jìn)程事件,此時(shí),對產(chǎn)生的三個(gè)子進(jìn)程來說, Event::$events 存在兩個(gè)事件!從父進(jìn)程拷貝了兩個(gè)事件。Event::$evnets 添加事件,此時(shí),相對產(chǎn)生的第四個(gè)子進(jìn)程來說,Event::$events 存在三個(gè)事件,從父進(jìn)程拷貝了三個(gè)事件。由上可知,子進(jìn)程實(shí)際也在監(jiān)聽從父進(jìn)程拷貝的事件,如果事件觸發(fā),那么監(jiān)聽該事件的父子進(jìn)程實(shí)際上都會(huì)觸發(fā)。從而出現(xiàn)了令人郁悶的:子進(jìn)程亂入到了父進(jìn)程的領(lǐng)域。
在子進(jìn)程中,把從父進(jìn)程拷貝的事件銷毀即可。
for ($i = 0; $i < 4; ++$i)
{
$pid = pcntl_fork();
if ($pid < 0) {
throw new Exception("創(chuàng)建子進(jìn)程失敗");
} else if ($pid > 0) {
// 父進(jìn)程
Select::addIo( .... );
// ...添加相關(guān)事件
} else {
// 子進(jìn)程
// 銷毀從父進(jìn)程拷貝的事件
Select::clear();
// ....做些什么
}
}按照特定規(guī)律提取,比如前幾位是名字,后幾位是地址
將所有地址存起來,然后檢索詞,找得到就是地址,找不到就是名字,但是不排除人名和地名相同的情況
簡單的做法就是用特殊符號(hào)將名字和地址分隔開來,比如空格或者冒號(hào)之類的,然后做字符串截取就可以了
SELECT FROM question WHERE id >= ((SELECT MAX(id) FROM question)-(SELECT MIN(id) FROM question)) RAND() + (SELECT MIN(id) FROM question) and id not in(1,3) LIMIT 2
不寫模塊名,默認(rèn)當(dāng)前模塊。
不寫控制器,默認(rèn)當(dāng)前控制器。
拿到code需要用戶同意的,你想跳過那步是不可以的。
select * from table where 條件 orderby id DESC 點(diǎn)擊量 DESC limit 50
循環(huán)的時(shí)候 拿第一條不就行了?
假如不想打亂時(shí)間順序。
去掉點(diǎn)擊量排序,
關(guān)注下mysql的max()的用法
你可以先按照時(shí)間順序 加點(diǎn)擊量順序 取出 50條數(shù)據(jù) 。取第一條點(diǎn)擊數(shù)最大的
然后根據(jù)php函數(shù)按時(shí)間重排序
array_multisort()已找到解決問題答案,每次load完excel文件并且讀取完成以后,用load產(chǎn)生的phpexcel對象調(diào)用一下phpexcel本身提供的disconnectWorksheets()方法,會(huì)為phpexcel的屬性賦予null值,釋放內(nèi)存資源
1.可以ping下www.lyt7y.cn 看看是否有響應(yīng)
2:如果沒有響應(yīng),可能是hosts沒有進(jìn)行ip綁定,需要將域名綁定到hosts中
127.0.0.1 www.lyt7y.cn
3:如果綁定過了,可以檢查下系統(tǒng)代理
北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
達(dá)內(nèi)教育集團(tuán)成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機(jī)構(gòu),是中國一站式人才培養(yǎng)平臺(tái)、一站式人才輸送平臺(tái)。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國家深化產(chǎn)教融合/校企合作的政策,積極推進(jìn)“中國制造2025”,實(shí)現(xiàn)中華民族偉大復(fù)興的升級(jí)產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國職業(yè)人才培訓(xùn)領(lǐng)域的先行者
曾工作于聯(lián)想擔(dān)任系統(tǒng)開發(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ū)ο箝_發(fā)經(jīng)驗(yàn),技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點(diǎn)難點(diǎn)突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗(yàn)。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。