絕頂
你應該是在類中看到的吧,用這個開頭的函數(shù)一般是構(gòu)造器,其他函數(shù)一般不是這樣寫的,構(gòu)造器就類的構(gòu)造函數(shù),在你new一個類的時候,會去先執(zhí)行這個構(gòu)造器,你可以去了解一下構(gòu)造器
天川千夏
如果agree有顯示結(jié)果可以這樣做<input type='button' name='No' value="Disagree" onClick="location.href=location.href+'?a=1'"><? if($_GET['a']=='1'){id=1;agree($id,$startdate,$enddate,$days);}?> 其實你應分前后臺,分兩個文件,一個顯示給客戶,在ie上運行,叫前臺一個處理事務在服務器上運行,叫后臺用js從顯示頁跳轉(zhuǎn)到處理頁(或用提交表單,可處理信息)處理完再跳轉(zhuǎn)到顯示頁
長春巖
這個你可以這樣來想,每一個分類都是相同的,只是內(nèi)容不同而已。先定義一個模板,這個模板就是一種表格的格式,定義顯示幾行幾列,每一個分類就是內(nèi)容不同,因此只在那些需要改變的地方加上PHP代碼就行。 $temp=ereg_replace('{CLASS}',$this->css_name,$this->html_table); $temp=ereg_replace('{ALIGN}',$align,$temp); $temp=ereg_replace('{BORDER}',$this->border,$temp); $temp=ereg_replace('{BD_COLOR}',$this->bd_color,$temp); $temp=ereg_replace('{BG_COLOR}',$this->bg_color,$temp); $temp=ereg_replace('{C_PADDING}',$this->cellpadding,$temp); $temp=ereg_replace('{C_SPAC}',$this->cellspacing,$temp); $temp=ereg_replace('{WIDTH}',$this->width,$temp); $temp=ereg_replace('{HEIGHT}',$this->height,$temp); $this->tbl_context.=$temp; } #Atomic Operation function add_row() { $this->tbl_context.=$this->html_tr; } #Atomic Operation #Param $in_array:每行各個列的內(nèi)容 # $col_options:列設(shè)置(輸入一個數(shù)組,按照如下順序) # array('CSS源文件', # '對齊方式', # '列寬', # '列高', # '背景色') # 該數(shù)組如果不設(shè)置,則采用默認設(shè)置 function add_cols($in_array,$col_options=array()) { if(count($col_options)==0) $col_options=array('','center','','',''); $temp=ereg_replace('{CLASS}',$col_options[0],$this->html_td); $temp=ereg_replace('{ALIGN}',$col_options[1],$temp); $temp=ereg_replace('{WIDTH}',$col_options[2],$temp); $temp=ereg_replace('{HEIGHT}',$col_options[3],$temp); $temp=ereg_replace('{BG_COLOR}',$col_options[4],$temp); if(is_array($in_array)) { foreach($in_array as $val) { $this->tbl_context.=$temp.$val; } } else { $this->tbl_context.=$temp.$in_array;//輸入非數(shù)組的情況 } } ###########用來創(chuàng)建表頭############ ####參數(shù)$table_header可以是資源類型和數(shù)組類型 #### 若是資源類型則必須是mysql_query返回 #### 的資源類型.也可以調(diào)用mysql_DB類的db_query #### 方法. function create_table_header($table_header) { if (is_resource($table_header)) { $header_arr=array(); for ($i=0;$i<mysql_num_fields($table_header);$i++) array_push($header_arr,mysql_field_name($table_header,$i)); $this->add_row(); $this->add_cols($header_arr); } else if (is_array($table_header)) { $this->add_row(); $this->add_cols($table_header); } else echo ("傳入了錯誤的參數(shù)!期望是數(shù)組或資源類型!<BR>"); }#創(chuàng)建數(shù)據(jù)表 function createDBTable($result) //$result為返回的結(jié)果資源 { while($row=mysql_fetch_array($result)) { $this->add_row(); foreach($row as $key=>$val) if(ereg('[0-9]',$key))//只要鍵為數(shù)字的值 $this->add_cols("$row[$key]"); } } function table_display() { echo "$this->tbl_context"; }}//end of class?>////////////////htmlTags.php的內(nèi)容://///////////<?php$html_table="<table class=\"{CLASS}\" align=\"{ALIGN}\" border=\"{BORDER}\" bordercolor=\"{BD_COLOR}\" ";$html_table.="bgcolor=\"{BG_COLOR}\" cellpadding=\"{C_PADDING}\" cellspacing=\"{C_SPAC}\" ";$html_table.="width=\"{WIDTH}\" height=\"{HEIGHT}\" />";$html_tr="<tr />";$html_td="<td class=\"{CLASS}\" align=\"{ALIGN}\" width=\"{WIDTH}\" height=\"{HEIGHT}\" bgcolor=\"{BG_COLOR}\" />";?><?phpinclude "../DB/mysql_DB.inc";include 'genTable.inc';$db=new mysql_DB;$db->connectDB('localhost','root','','goods');$t=new ld_table('30','400','1','1','0','#000000','#0000ff','font.css');$t->initTable();$t->create_table_header($typeName.$typeQua)); //$typeName為產(chǎn)品類型名,$typeQua為該類產(chǎn)品數(shù)量。你可以用循環(huán)來每次改變這兩個量,就構(gòu)建出了不同的表頭。(這里沒有循環(huán),所以只構(gòu)建出一個表)這個方法是構(gòu)造表頭。$t->createDBTable($db->db_query($query)); //$query是發(fā)給數(shù)據(jù)庫的請求,就是請求這種商品的名稱和URL。這個方法是構(gòu)建一個表的表體。$t->table_display();?>這個循環(huán)體你自己構(gòu)造,應該不麻煩,思想就是上面說的。
孔昱
::是靜態(tài)訪問方式,只和類本身相關(guān)而和類對象沒有關(guān)系,所以直接調(diào)用是類名::方法名因為PHP語言本身就是一個不夠嚴謹?shù)恼Z言(或者換句話說,比較靈活),所以當一個方法只要是public(像樓主那樣的缺省的也為public類型)并且該方法中沒有使用代表對象的$this就可以使用::來調(diào)用,php在解析的時候會自動將其以靜態(tài)方法解析調(diào)用。當然在PHP5以后,就引入了static public function func(){}這種方式聲明,所以如果在PHP5上,并且報錯機制是比較全的話,直接調(diào)用一個沒有static聲明的方法的時候,就會提示一個notic了···
劉賢
在Java的調(diào)用方法是import,而在PHP中沒有import這個函數(shù),一般PHP中調(diào)用其他類是用到require(),具體PHP調(diào)用其他類的方法如下:
1、首先應該先有一個文件名為tool.php的文件,在文件中聲明一個類。
2、然后需要有另一個文件名為main.php的文件,在文件中調(diào)用上面的類。方法如下。
擴展資料:
類是變量與作用于這些變量的函數(shù)的集合。使用下面的語法定義一個類:
<?php
class Cart { var $items; // 購物車中的物品
// 將 $num 個 $artnr 物品加入購物車
function add_item($artnr, $num) {
$this->items[$artnr] += $num;
} // 將 $num 個 $artnr 物品從購物車中取出
function remove_item($artnr, $num) {
if ($this->items[$artnr] > $num) {
$this->items[$artnr] -= $num; return true;
} elseif
($this->items[$artnr] == $num) {
unset($this->items[$artnr]); return true;
} else {
return false; }
}
} ?>
上面的例子定義了一個 Cart 類,這個類由購物車中的商品構(gòu)成的數(shù)組和兩個用于從購物車中添加和刪除商品的函數(shù)組成。
參考資料來源:百度百科-php類
漁人
1.遞推 2.回歸遞推: 遞推為正向的推導,即從前向后的分析問題,尋找遞推的條件。 1-3求和為例 sum(1) = 1 + 0 sum(2) = 2 + 1 sum(3) = 3 + 2 + 1 可發(fā)現(xiàn) sum(1) = 1 + 0 sum(2) = 2 + sum(2-1) sum(3) = 3 + sum(3-1) 這樣一來把求 sum(3) 轉(zhuǎn)為求sum(2)的把求sum(2)的轉(zhuǎn)為求sum(1) 回歸 自后向前再追逆一遍。論證前期推導的正確性。 經(jīng)過以上分析所以得函數(shù)sum的公式為: sum(n) = n + sum(n-1) 所以sum(n)的函數(shù)原型為: function sum($n){ return $n + sum($n-1); } 但這段代碼還是有問題,因為還缺少了退出條件。所以寫遞歸的時候注意了。一定要寫一個 if 語句用來判斷遞歸何時退出。沒有退出條件的遞歸就是死循環(huán)。怎么退出呢?退出條件是什么?這里由于是計算1-3之和所以這個函數(shù)的成立條件為 0<n<=3 當sum(n) (n<0時是不成立的) 所以寫出if條件: function sum($n){ if($n>0) return $n + sum($n-1); return return $a; //這里讓它的最后一次循環(huán)加了0而不是-1,我這里運行的跟你的不一樣吧。。呵呵。。因為你的if條件是$n > 1 所在 else 里 $n <= 1 所以你的最后加了1就退出了。。 }最后總結(jié)下運行過程用一行表示下,也許這樣表達你能明白,這段代碼就相當于如下的公式。sum(3+sum(2+sum(1))) 如果讓你去運行你會如何呢? 你會先看到外層的sum(3+當看到+號了發(fā)現(xiàn)后面還有一個函數(shù)沒有求,哎算了。。。sum(3)現(xiàn)在求不了我把sum(2)求出來再求sum(3)吧,于是你看sum(2 又是看到+號后面又有了一個sum函數(shù)是求sum(1)的心想這回看你還有沒有了。。嘻嘻。。。好了sum(1)求出來了再把sum(1)的值返回再加上2 也就是求出了sum(2),sum(2)求出來了再加上3,sum(3)也求出了最后函數(shù)執(zhí)行終止
張明
你的寫法有問題1.你想調(diào)用UExcel類中的方法getupdatePrice首先你的$res1是否是實例化你的UExcel類的object,如果是那你用$res1來調(diào)用getup那個方法是可以的;第二你調(diào)用這個方法的時候你想把$sql傳遞過去,那么你應該寫為$res=$res1->getupdatePrice($sql);
那怎么改- -
你有沒有實例化你的UExcel類?如果沒有那你將下面兩行代碼$res1=new UExcel;$res=$res1->getupdatePrice($sql);替代你的$res=$res1->getupdatePrice($sQery);就行了
潘繡虎
include(),require(),include_once(),require_once().例:<?php echo "這是主文件輸出的!<br>"; include("include.inc"); //引用同目錄下名為"include.inc"的文件 echo "<br>繼續(xù)執(zhí)行主文件!";?>然后在同目錄下建一個名為include.inc的文件,其代碼如下:<?php echo "這是從"include.inc“文件中輸出的!";?>若把"include.inc"文件重新命名為"include2.inc",再來執(zhí)行原程序,會出現(xiàn)警告,但“繼續(xù)執(zhí)行主文件!”;若把原程序中的"inclue"改為require,即require("include.inc"),再執(zhí)行原程序,不僅有警告出現(xiàn)還有錯誤,而且后面的“繼續(xù)執(zhí)行主文件!”沒有輸出。另外,還有include_once()和require_once()也可以用來引用文件,它們的行為與include()和require()語句類別,唯一的區(qū)別是如果該文件中的代碼已經(jīng)被包含了,則不會再被包含。 這個可以根據(jù)上面的例子自己修改驗證,
邢餛
class A{ public $bb,$cc;function othersomething(){ return $this->cc;}}
function dosomething() { $bb = $this->bb; $othersomething = $this->othersomething(); }
方法的參數(shù)是新定義一個變量,注意是新定義,方法結(jié)束自動銷毀,
2.PHP類中方法定義的參數(shù)與調(diào)用時的參數(shù)名稱可以不同。
帶默認值的就是指當這些參數(shù)沒有給出的時候可以按照預定義內(nèi)容進行賦值(按參數(shù)順序調(diào)用)。
function text($i, $a = "test1", $test = "test2"){
echo "<h1>{$i}</h1>";
echo "<h1>{$a}</h1>";
echo "<h1>{$test}</h1>";
}
2.調(diào)用:
text("test");
----顯示
test
test1
test2
text("test","test3","test4");
----顯示
test
test3
test4