好,分我要了,你需求是來路ip記錄在ip.txt里,countdata.txt是訪問次數(shù)對吧。但是你的需求我沒看明白,ip.txt僅僅是用來存貯最后訪問ip,而不是全部訪問ip嗎?那么countdata.txt也沒啥意義了,僅僅是統(tǒng)計頁面打開次數(shù)而已了。理解的有問題嗎?
創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),金東企業(yè)網(wǎng)站建設(shè),金東品牌網(wǎng)站建設(shè),網(wǎng)站定制,金東網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,金東網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
我的理解是是ip.txt存放所有ip地址,countdata.txt里存放ip和該ip對應(yīng)的點擊次數(shù)。其實也就需要countdata.txt一個就可以了,如果有新ip,存入,該ip訪問次數(shù)+1,如果已存在改ip,ip訪問次數(shù)+1。
如果只是存貯最后訪問ip和總訪問次數(shù),那太簡單了。等你回復(fù),確定需求后給代碼
兩種方式:
第一:使用一個文本文檔
每次讀取這個文本文檔的數(shù),然后加1,再覆蓋寫入
關(guān)鍵代碼:
?php
$txt_db?=?'jsb.txt';
$nums?=?file_get_contents($txt_db);
$nums++;
file_put_contents($txt_db,$nums);
?
第二:使用數(shù)據(jù)庫,設(shè)計數(shù)據(jù)表,每次更新數(shù)據(jù)庫。
個人建議:使用第一種方法。
原因:需求簡單,所以盡可能少占資源,抗壓力強。
$str?=?""
echo?substr_count($str,'w');?//?print?3
建議使用substr_count函數(shù),這樣可以直接統(tǒng)計出結(jié)果。
preg_match_all得到的是一個二維數(shù)組,你可以去看一下php手冊,他還有一個可選參數(shù),默認時PREG_PATTERN_ORDER,這樣得到的二維數(shù)組$arr,第一個是匹配的字符串,第二個是匹配第一個括號的字符串,后面依次類推
還可以設(shè)置為PREG_SET_ORDER,這樣他得到的二維數(shù)組是,第一個是匹配的第一個字符串,第二個是匹配的第二個字符串,以此類推
所以你這題不加后面那個參數(shù)的話就是打印count($arr[0]),或者加參數(shù)PREG_SET_ORDER,打印出來就是6了。
$parrten?=?"/[a-zA-Z]+/";
$str?="中英文chinese?english混合?this?is?a?test這是一個測試";
preg_match_all($parrten,$str,$arr,PREG_SET_ORDER);
print_r($arr);
echo??count($arr);
你既然把這個值存在session里了就不需要用隱藏域了。
至于說要插入兩次,沒看到代碼我也不好說