火車頭discuz61 完美採集的php介面文件

WBOY
發布: 2016-07-29 08:40:48
原創
1327 人瀏覽過

PS:對原文件的修改較大,程序中註釋已經很詳盡,這裡就不多說了。

複製程式碼 程式碼如下:


// header('Content-Type:text/html;charset=UTF-8');
//if(function_exists("mb_convert_encoding")){
// $tmp = checkAndTranslate("使用前請將該檔案直接上傳至論壇根目錄", 0);
// header('Content-Type:text/html;charset=UTF-8');
// print($tmp);
//}else{
// print("NO");
//}
// exit("this.line=" .__line__);
/*
檔案名稱:locoyonline_for_discuz610.php
*使用前請將該檔案直接上傳至論壇根目錄
*本檔案為GBK編碼;
*處理後導入資料庫的編碼為:utf-8;
*需要替換字元時,需把replace.txt複製到同目錄下;
*/
//處理全域變數
//foreach( $_POST as $key => $value){
//$$key = $value ;
//print($key.' = '.$value.'n');
// }
//var_dump($_POST);
//exit('end-0');
// 需要插入的資料表
// 1.cdb_threads
// 2 .cdb_rewardlog // ok 懸賞記錄表
// 3.cdb_mythreads
// 4.cdb_posts
// 5.cdb_tags _update
// 6.cdb_thtags // 8.cdb_members _update ok 更改懸賞表
//done end !
$user_list = file('./makeuser/username.txt');
// 隨機發文的使用者名單,必須是已經註冊的
// 關於批量註冊用戶名可以參考Discuz 6.0+ 批量註冊用戶名
$user_list = array_map("curlAndCopy", $user_list);
function curlAndCopy($a) {
return trim($a);
}
$replyusers = implode("|",$user_list);
//處理回應的格式
function trimAndCurl($str){
$str = preg_replace('/ns{5,}/','', $str , 1);
$str = trim($str);
$str = checkAndTranslate($str) ;
return $str;
}
function checkAndTranslate($mess, $if_replace =1, $in_char_type='GBK', $out_char_type='UTF-8'){
//if replace ?
if($if_replace){
$mess = curlAndReplace($mess);
}
//if chinese GBK ?
if(preg_match('/[x80-xff]. /', $mess) ){
$mess = mb_convert_encoding($mess, $out_char_type, $in_char_type);
}
return addslashes($mess) ;
}
return addslashes($mess) ;
} $replace_list = file('./makeuser/replace.txt');
foreach($replace_list as $item){
$item = preg_replace("/s+/"," ||",$item);
$items = explode("||",$item);
$tmp = '';
$message = str_replace( $items[0],$tmp,$message);
$message = str_replace($items[1],$items[0],$message);
$message = str_replace($tmp,$items [1],$message);
}
return $message;
}
define('CURSCRIPT', 'post');
define('NOROBOT', TRUE);
require_once './include/common.inc.php';
require_once DISCUZ_ROOT.'./include/post.func.php';
$_DTYPE = $checkoption = $optionlist = array()
if($typeid) {
threadtype_checkoption();
}
require_once DISCUZ_ROOT.'./include/discuzcode.func.php';
$tleigation = $navtle== ';
//這裡是新加入的程式碼以,開始
if ( $lid "locoy" )
{
// die(驗證密碼錯誤);
}
//這裡是新增的程式碼,結束,
//rq204,Q285576545,2008.7.29
$navigation = "» $forum[name] $navigation";
$navtitle = $navtitle.strip_tags($forum['name']).' - ';
if($forum['type'] == 'sub') {
$query = $db->query(" SELECT name, fid FROM {$tablepre}forums WHERE fid='$forum[fup]'");
$fup = $db->fetch_array($query);
$navigation = "» $fup[name] $navigation";
$navtitle = $navtitle.strip_tags($fup['name']).' - ';
}
$special = 空($special) || !is_numeric($special) || $特別 6?
$allowpostattach = !empty($forum['allowpostattach']) || (!$forum['postattachperm'] && $allowpostattach) || ($forum['postattachperm'] && forumperm($forum['postattachperm']));
$attachextensions = $forum['attachextensions'] ? $forum['attachextensions'] : $attachextensions;
$enctype = $allowpostattach ? 'enctype="multipart/form-data"' : '';
$maxattachsize_kb = $maxattachsize / 1000;
$postcredits = $forum['postcredits'] ? $forum['postcredits'] : $creditspolicy['post'];
$replycredits = $forum['replycredits'] ? $forum['replycredits'] : $creditspolicy['reply'];
$digestcredits = $forum['digestcredits'] ? $forum['digestcredits'] : $creditspolicy['digest'];
$postattachcredits = $forum['postattachcredits'] ? $forum['postattachcredits'] : $creditspolicy['postattach'];
$maxprice = isset($extcredits[$creditstrans]) ? $最高價:0;
$extra = rawurlencode($extra);
$blogcheck = 空($isblog) && 空($addtoblog) ? '' : '檢查=“檢查”';
$notifycheck = 空($emailnotify) ? '' : '檢查=“檢查”';
$stickcheck = 空($sticktopic) ? '' : '檢查=“檢查”';
$digestcheck = 空($addtodigest) ? '' : '檢查=“檢查”';
$subject = isset($subject) ? dhtmlspecialchars(censor(trim($subject))) : '';
$message = isset($message) ?審查(修剪($訊息)):'';
$readperm = isset($readperm) ? intval($readperm) : 0;
$價格 = isset($價格) ? intval($價格): 0;
$urloffcheck = $usesigcheck = $smileyoffcheck = $codeoffcheck = $htmloncheck = $emailcheck = '';
$seccodecheck = ($seccodestatus & 4) && (!$seccodedata['minposts'] || $posts $secqaacheck = $secqaa['status'][2] && (!$secqaa['minposts'] || $posts if($iscircle = $supe['status'] && $supe['circlestatus'] && $forum['status'] == 2) {
unset($forum['threadtypes']);
}
$allowpostpoll = $allowpost && $allowpostpoll && ($forum['allowpostspecial'] & 1);
$allowposttrade = $allowpost && $allowposttrade && ($forum['allowpostspecial'] & 2);
$allowpostreward = $allowpost && $allowpostreward && ($forum['allowpostspecial'] & 4) && isset($extcredits[$creditstrans]);
$allowpostactivity = $allowpost && $allowpostactivity && ($forum['allowpostspecial'] & 8);
$allowpostdebate = $allowpost && $allowpostdebate && ($forum['allowpostspecial'] & 16);
$allowpostvideo = $allowpost && $allowpostvideo && ($forum['allowpostspecial'] & 32) && $videoopen;
$allowanonymous = $forum['allowanonymous'] || 1:0;
$editorid = 'posteditor'; $允許匿名?
$editoroptions = str_pad(decbin($editoroptions), 2, 0, STR_PAD_LEFT);
$editormode = $editormode == 2 ? $editoroptions{0} : $editormode;
$allowswitcheditor = $editoroptions{1};
$advanceeditor = $special ? 0:1;
$previewdisplay = !empty($previewpost) ? '' : '沒有任何';
if($action == 'newthread') {
//複製newthread.inc.php
$discuz_action = 11;
if(empty($forum['fid']) || $forum['type'] == 'group') {
exit('未選取版塊或版塊不能發文');
}
$isblog = 空($isblog) ? '' : '是的';
if($subject == '' || $message == '') {
exit('標題或內容為空');
}
if($post_invalid = checkpost()) {
exit('標題或內容超過發文限制');
}
if($allowpostattach && is_array($_FILES['attach'])) {
foreach($_FILES['attach']['name'] as $attachname) {
if ($attachname!= '') {
checklowerlimit($postattachcredits);
休息;
}
}
}
$typeid = isset($typeid) && isset($forum['threadtypes']['types'][$typeid]) ?類型ID:0;
$iconid = !empty($iconid) && isset($_DCACHE['icons'][$iconid]) ? $圖示:0;
$displayorder = $modnewthreads ? (($forum['ismoderator'] && !empty($sticktopic)) ? 1 : 0);
$digest = ($forum['ismoderator'] && !empty($addtodigest)) ? 1:0;
$blog = $allowuseblog && $forum['allowshare'] && !empty($addtoblog) ? 1:0;
$readperm = $allowsetreadperm ? $isanonymous = $isanonymous && $allowanonymous ? 1:0;
$price = intval($price);
$price = $maxprice && !$special ? ($price //echo $typeid.','.','.','
if(!$typeid && $forum['threadtypes']['required'] && !$special) {
// exit('未填入主題分類');
}
$discuz_user=$_POST['使用者名稱'];
$discuz_user = checkAndTranslate($discuz_user, 0);
$sql_tmp = "從 {$tablepre}members m WHERE m.username like '%$discuz_user%' 中選擇 uid,password,secques";
$query =$db->query($sql_tmp);
if ($rs=$db->fetch_row($query)){
list($discuz_uid,$discuz_pw, $discuz_secques ) =$rs;
}
else
{
// exit('不存在的使用者名稱'.$discuz_user);
exit('不存在的使用者名稱'.$sql_tmp);
}
//var_dump($_POST);exit('
this.line='.__line__);
$messages = explode("|||",$message);
//最佳答案的註解是否需要移除
//$messages = array_merge(array_slice($messages, 0, 2), array_slice($messages, 3));
$mc = count($messages);
$replycount = $mc -1;
$author = !$isanonymous ? $discuz_user : '';
$moderated = $digest || $displayorder > 0 ? 1 : 0;
$ attachment = ($allowpostattach && $attachments = attach_upload()) ? 1 : 0;
$subscribed = !empty($emailnotify) && $discuz_uid ? 1 : 0;
$esup_pushstatus' ] && $forum['supe_pushsetting']['status'] == 1 && !$modnewthreads ? '1' : '0';
$sgidadd1 = $sgidadd2 = '';
if($iscircle)idadd1 = $sgidadd2 = '';
if($iscircle) {
$sgidadd1 = ', sgid';
$sgidadd2 = ", '$sgid'";
}
/*預處理資料*/
//$price = mt_rand( 3,10);
$price = 0;
$views = mt_rand(30,256);
$timestamp = mt_rand(strtotime('2008-12-25') ,strtotime('2008-12- 29'));
$tagstatus = 0;
$tags = "";
//已解決:
//$price = -$price;
//$closed = 1;
//未解決:
$closed = 0;
$db->query("INSERT INTO {$tablepre}threads (fid, readperm, price, iconid, typeid, author, authorid, subject, dateline, lastpost, lastposter, displayorder, digest, blog,attachment, subscribed, moderated, supe_pushstatus $idadd1 ,special ,closed , '$read🎜>VALUES ('$fid', '$readm' '$iconid', '$typeid', '$author', '$discuz_uid', '".checkAndTranslate($subject)."', '$timestamp', '$timestamp', '$author', '$displayorder ', '$digest', '$blog', '$attachment', '$subscribed', '$moderated', '$supe_pushstatus' $sgidadd2 ,0 ,$closed ,$views )");
$tid = $db->insert_id();
// making reward logs !
$db->query("INSERT INTO {$tablepre}rewardlog (tid,authorid,netamount,dateline) VALUES ('$tid' , '$discuz_uid', '$price', '0')");
// updating members logs !
//if minus credits ?
//$db->query("UPDATE { $tablepre}members SET posts=posts+1,credits=credits+$price,lastpost='".$_SERVER['REQUEST_TIME']."' WHERE uid ='$discuz_uid' ");
$db->query ("UPDATE {$tablepre}members SET posts=posts+1,lastpost='".$_SERVER['REQUEST_TIME']."' WHERE uid ='$discuz_uid' ");
if($subscribed) { if($subscribed) {
$db->query("REPLACE INTO {$tablepre}subscriptions (uid, tid, lastpost, lastnotify)
VALUES ('$discuz_uid', '$tid', '$timestamp', '$timestamp') ", 'UNBUFFERED');
}
$db->query("REPLACE INTO {$tablepre}mythreads (uid, tid, dateline, special) VALUES ('$discuz_uid', '$tid', ' $timestamp', '0')", 'UNBUFFERED');
if($moderated) {
updatemodlog($tid, ($displayorder > 0 ? 'STK' : 'DIG'));
updatemodworks(($displayorder > 0 ? 'STK' : 'DIG'), 1);
}
if($forum['threadtypes']['special'][$typeid] && $optiondata && is_array($optiondata)) {
foreach($optiondata as $optionid => $value) {
$db->query("INSERT INTO {$tablepre}typeoptionvars (typeid, tid, optionid, value, expiration )
VALUES ('$typeid', '$tid', '$optionid', '$value', '".($typeexpiration ? $timestamp + $typeexpiration : 0)."')");
}
}
$bbcodeoff = checkbbcodes($message, !empty($bbcodeoff));
$smileyoff = checksmilies($message, !empty($smileyoff));
$parseoff> !empty($parseurloff);
//$htmlon = bindec(($tagstatus && !empty($tagoff) ? 1 : 0).($allowhtml && !empty($htmlon) ? 1 : 0));
$htmlon = 1;
$pinvisible = $modnewthreads ? -2 : 0;
$db->query("INSERT INTO {$tablepre}posts (fid, tid, first, author, authorid, subject, dateline, message, useip, invisible, anonymous, usesig, htmlon, bbcodeoff, smileyoff, parseurloff, attachment)
VALUES ('$fid', '$tid', '1', '$discuz_VALUES ('$fid', '$tid', '1', '$discuz_user', '$disc. discuz_uid', '$subject', '$timestamp', '".checkAndTranslate($messages[0])."', '$onlineip', '$pinvisible', '$isanonymous', '$usesig', '$ htmlon', '$bbcodeoff', '$smileyoff', '$parseurloff', '$attachment')");
$pid = $db->insert_id();
if($tagstatus && $tags != '') {
$tags = str_replace(array(chr(0xa1).chr(0xa1), chr(0xa1).chr(0x40), chr(0xe3).chr(0x80).chr(0x80) ), ' ', $tags);
$tagarray = array_unique(explode(' ', censor($tags)));
$tagcount = 0;
foreach($tagarray as $tagname) {
$tagname = trim($tagname);
if(preg_match('/^([x7f-xff_-]|w){3,20}$/', $tagname)) {
$ query = $db->query("SELECT closed FROM {$tablepre}tags WHERE tagname='".checkAndTranslate($tagname, 0)."'");
if($db->num_rows($query) ) {
if(!$tagstatus = $db->result($query, 0)) {
$db->query("UPDATE {$tablepre}tags SET total=total+1 WHERE tagname=' ".checkAndTranslate($tagname, 0)."'", 'UNBUFFERED');
}
} else {
$db->query("INSERT INTO {$tablepre}tags (tagname, closed , total)
VALUES ('".checkAndTranslate($tagname, 0)."', 0, 1)", 'UNBUFFERED');
$tagstatus = 0;
}
if( !$tagstatus) { $db->query("INSERT {$tablepre}threadtags (tagname, tid) VALUES ('".checkAndTranslate($tagname, 0)."', $tid)", 'UNBUFFERED');
}
$tagcount++;
if($tagcount > ) ; 4) {
unset($tagarray);
}
}
}
$tradeaid = 0;
if($attachment); {
$searcharray = $pregarray = $replacearray = array()
foreach($attachments as $key => $attach) {
$db->query("INSERT INTO {$tablepre"; }附件(tid、pid、日期線、readperm、價格、檔案名稱、描述、檔案類型、檔案大小、附件、下載、isimage、uid、thumb、遠端)
VALUES ('$tid', '$pid', '$時間戳記'、 '$attach[perm]'、'$attach[price]'、'$attach[name]'、'$attach[description]'、'$attach[type]'、'$attach[size]' , '$ attach[attachment]', '0', '$attach[isimage]', '$attach[uid]', '$attach[thumb]', '$attach[remote]')");
$searcharray [] = '[local]'.$localid[$key].'[/local]';
$pregarray[] = '/[localimg=(d{1,3}),(d {1, 3})]'.$localid[$key].'[/localimg]/is';
$replacearray[] = '[attach]'.$db->insert_id().'[ /attach]' ;
}
$message = str_replace($searcharray, $replacearray, preg_replace($pregarray, $replacearray, $message));
$db->query("UPDATE {$tablepre}posts SET message ='".checkAndTranslate($message, 0)."' WHERE pid='$pid'");
updatecredits($discuz_uid, $postattachcredits, count($attachments));
}
if ($iscircle && $sgid) {
supe_dbconnect();
$query = $supe['db']->query("UPDATE {$supe[tablepre]}groups SET lastpost='$timestamp' WHERE gid='$sgid'", 'SILENT');
}
if($modnewthreads) {
$db->query("UPDATE {$tablepre}forums SET Todayposts=todayposts+1 WHERE fid ='$fid'", 'UNBUFFERED');
} else {
if($digest) {
foreach($digestcredits as $id => $addcredits) {
$postcredits[$ id] = (isset($postcredits[$id]) ]) ? $postcredits[$id] : 0) + $addcredits;
}
}
updatepostcredits('+', $discuz_uid, $🎜>updatepostcredits('+', $discuz_uid, $🎜>updatepostcredits('+', $discuz_uid, $🎜>updatepostcredits('+', $discuz_uid, $🎜>updatepostcredits('+', discuz_uid, $ postcredits);
$subject = str_replace("t", ' ', $subject);
$lastpost = "$tidt".checkAndTranslate($subject)."t$timestampt$author";
$db->query("UPDATE {$tablepre}forums SET lastpost='$lastpost',threads=threads+1, posts=posts+1,todayposts=todayposts+1 WHERE fid='$fid'" ,「無緩衝」);
if($forum['type'] == 'sub') {
$db->query("UPDATE {$tablepre}forums SET lastpost='$lastpost' WHERE fid='$ forum[ fup]'", '未緩衝');
}
}
echo("成功發表主題|".$tid);
}
if($replycount)
{
//開始發布回應
$discuz_action = 12;
require_once DISCUZ_ROOT.'./include/forum.func.php';
print_r(replyuser); replyusers =explode("|",$replyusers);
$reusercount = count($replyusers);
for($re=1;$re{
$index = mt_rand(1,$reusercount-1);
while( in_array( $index ,$post_arr ) || $replyusers[$index] ==$_POST['username'] ){
$ index = mt_rand(1,$reusercount-1);
}
$post_arr[] = $index;
$discuz_user = $replyusers[$index];
$discuz_user = checkAndTranslate($discuz_Translate($discuz_user , 0);
$query =$db->query("SELECT uid,password,secques FROM {$tablepre}members m WHERE m.username like '%$discuz_user%'");
if ($ rs=$db->fetch_row($query)){
list($discuz_uid,$discuz_pw, $discuz_secques ) =$rs;
}
else
{
echo('不存在的使用者名稱'.$discuz_user);
繼續;
}
$attachnum = 0;
if($allowpostattach && !empty($_FILES['attach']) && is_array($ _FILES['attach'])) {
foreach($_FILES['attach']['name'] as $attachname) {
if($attachname != '') {
$attachnum + +;
}
}
$attachnum && checklowerlimit($postattachcredits, $attachnum);
} else {
$_FILES = array();
}
$_FILES = array();
}
= $attachnum ? Attach_upload() : 陣列();
$附件=空($附件)? 0:1;
$subscribed = $thread['subscribed'] && $timestamp - $thread['lastpost'] $newsubscribed = !empty($emailnotify) & $🎜>$newsubscribed = !empty($emailnotify) & $& $discuz_uid; if($subscribed && !$modnewreplies) {
$db->query("UPDATE {$tablepre}訂閱SET lastpost='$timestamp' WHERE tid='$tid' AND uid'' $discuz_uid'" , '未緩衝');
}
if($newsubscribed) {
$db->query("REPLACE INTO {$tablepre}subscriptions (uid, tid, lastpost, lastnotify)
VALUES ('$discuz_uid', '$tid', '".($modnewreplies ? $thread['lastpost'] : $timestamp)."', '$timestamp')", '未緩衝');
}
$bbcodeoff = checkbbcodes($message, !empty($bbcodeoff));
$smileyoff = checkmilies($message, !empty($smileyoff));
$parseurloff = !url($parse!urloff) ;
// $htmlon = $allowhtml && !empty($htmlon) ? 1:0;
$htmlon = 1;
$usesig = !empty($usesig) ? 1:0;
$usesig = !empty($usesig) ? 1:0;
$isanonymous = $allowanonymous && !empty($isanonymous)? 1:0;
//$discuz_user = checkAndTranslate($discuz_user, 0);
$author = 空($isanonymous) ? $discuz_user : ' ';
$pinvisible = $modnewreplies ? -2:0;
$rand_time = mt_rand(150,3600);
$timestamp = $timestamp + $rand_time;
$db->query( "INSERT INTO {$tablepre}貼文(fid、tid、第一、作者、authorid、主題、日期線、訊息、useip、隱形、匿名、usesig、htmlon、bbcodeoff、smileyoff、parseurloff、附件)
VALUES ('$fid', '$ tid' , '0', '$discuz_user', '$discuz_uid', '', '$timestamp', '".trimAndCurl($messages[$re])."', '$onlineip', '$pinvisible' , ' $isanonymous', '$usesig', '$htmlon', '$bbcodeoff', '$smileyoff', '$parseurloff', '$attachment')");
$pid = $db->insert_id ( );
// 更新獎勵日誌
$db->query("UPDATE {$tablepre}rewardlog SET answererid='$discuz_uid',dateline='$timestamp' WHERE tid='$tid'") ;
// 更新會員日誌!
if($re == 1){
//新增積分問題
$db->query("UPDATE {$tablepre}members SET posts= posts +1,credits=credits+$price,lastpost='".$_SERVER['REQUEST_TIME']."' WHERE uid ='$discuz_uid'");
}else{
$db->query (" UPDATE {$tablepre}members SET posts=posts+1,lastpost='".$_SERVER['REQUEST_TIME']."' WHERE uid ='$discuz_uid'");
}
$db- >query ("REPLACE INTO {$tablepre}myposts (uid, tid, pid, 位置, 日期線, 特殊) VALUES ('$discuz_uid', '$tid', '$pid', '".($thread['回复' ] + 1)."', '$timestamp', '0')", 'UNBUFFERED');
$tradeaid = 0;
if($attachment) {
$searcharray = $pregarray = $replacearray = array();
foreach($attachments as $key => $attach) {
$db->query("INSERT INTO {$tablepre}附件(tid, pid, dateline, readperm, 價格, 檔案名稱, 描述,檔案類型、檔案大小、附件、下載、isimage、uid、thumb、遠端)
VALUES ('$tid', '$pid', '$timestamp', '$attach[perm] ', '$attach[price] ', '$attach[名稱]', '$attach[描述]', '$attach[類型]', '$attach[大小]', '$attach[附件]', '0', '$attach[ isimage]', '$attach[uid]', '$attach[thumb]', '$attach[remote]')");
$searcharray[] = '[local ]'.$localid[$key].'[/local]';
$pregarray[] = '/[localimg=(d{1,3}),(d{1,3})]'. $localid[$key].'[/localimg]/is';
$insertid = $db->insert_id();
$replacearray[] = '[attach]'.$insertid.'[/ attach]';
}
if(!empty($trade) && $thread['special'] == 2 && !empty($_FILES['tradeattach']['tmp_name'][0]) ) {
$tradeaid = $insertid;
}
$message = str_replace($searcharray, $replacearray, preg_replace($pregarray, $replacearray, $message));
$db-query ("UPDATE {$tablepre}posts SET message='".checkAndTranslate($message)."' WHERE pid='$pid'");
updatecredits($discuz_uid, $postachcredits, count($attachments));
}
if($modnewreplies) {
$db->query("UPDATE {$tablepre}forums SET Todayposts=todayposts+1 WHERE fid='$fid'", 'UNBUFFERED');
if($newsubscribed) {
$db->query("UPDATE {$tablepre}threads SET subscribed='1' WHERE tid='$tid'", 'UNBUFFERED');
}
}
} else {
$db->query("UPDATE {$tablepre}threads SET lastposter='$author', lastpost='$timestamp',replies=replies+1 ".( $附件? ',附件='1'':'')。 ",訂閱='"。 ($訂閱|| $newsubscribed ? 1 : 0)。 "' WHERE tid='$tid'",'UNBUFFERED' );
updatepostcredits('+', $discuz_uid, $replycredits);
$lastpost = "$thread[tid]t".checkAndTranslate($checkAndTranslate($ thread['subject'])."t$timestampt$author";
$db->query("UPDATE {$tablepre}forums SET lastpost='$lastpost', posts=posts+1, Todayposts=todayposts+ 1 WHERE fid='$fid'", 'UNBUFFERED');
if($forum['type'] == 'sub') {
$db->query("UPDATE {$tablepre}forums SET lastpost='$lastpost' WHERE fid='$forum[ fup]'", '未緩衝');
}
}
echo "成功回覆";
}
}
//exit('運行end.this.line='.__line__);

以上就介紹了火車頭discuz61完美採集的php介面文件,包含了方面的內容,希望對PHP教學有興趣的朋友有幫助。

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!