引用 | 編輯
anstd
2005-11-21 17:16 |
樓主
▼ |
||
x0
作者:紅軍©2005-11-21版權沒有,盜版隨便 前言: 以一般人的關念,隨便說個例子,譬如 (1)1+2= 等於3應該所有人都認同吧?那若是 (2)Ƈ'+ƈ'= 會是等於3嗎?決對不是喔! 因為 以(1)來說,它判定是數字1加數字2,結果會是3 以(2)來說,它判定則是文字1加文字2,結果會是12 資料型態介紹: 英文名稱 中文名稱 舉例 Boolean 布林型態 $a = True; Integer 整數型態 $a = 10; Float 浮點數型態 $a = 1.234; String 字串型態 $a = "可以開房間嗎?" Array 陣列型態 $a[0] = "房間1"; $a[1] = "房間2"; Object 物件型態 $a = new ObjectClass; Resource 外部資源型態 $a = mysql_connect(); NULL Null型態 $a = NULL; ●布林型態 這個你就想成是?不是?就這樣而已 因為此型態只有兩個值,分別為True(真);False(假)。 譬如說 $a = Ture; //$a設為真 $b = False; //$b設為假 除了直接設定,也可以不加以宣告使用該形態的default值 以下形態的Boolean值預設都為False Integer = 0 Float = 0.0 String = 空字串 Array = 沒有陣列原素的陣列 Object = 沒有任何變數的物件 NULL = 沒有任何值或變數 除了上述會轉變為False,其他都會被轉為True ●整數型態 不含小數的數值,真是廢話,不然怎麼叫整數... XD 可用10、8、16進制3個方式表示數值 譬如這樣 $num1 = 123; //十進制正整數 $num2 = -123; //十進制負整數 $num3 = 0123; //八進制的123 = 十進制的83 $num4 = 0x45; //十六進制的45 = 十進制的69 各進制的轉換不會也沒關係 Windows的小算盤就可以幫你解答....:-) ●浮點數型態 不用想的亂七八糟,絕對不是這個數字會飄浮起來...=_= 把它想成小數就對了,管他這麼多!! 浮點數有時又以DOUBLE表示 譬如說 $fuck01 = 123.456; //看也知道吧?就是123.456... $fuck02 = 1.23456e2; //看不懂嗎?其實也只是123.456,就把e2想成把小數點往哪丟 $fuck03 = 1.23456e-2; //e-2,剛剛往右丟,負的就往左丟,所以是0.0123456 路人甲:瞎咪變數fuck01呀....凸... 主講者:哦哦...有人要翻桌了...XD..(羞) ●字串型態 喔..好啦,認真一點.. XD 其實只要用單引號或雙引號括起來的,那就是烤肉串呀,看是要蜜汁還是....(被打..||) 用單引號括起來會怎樣? 字串中的變數,不會顯示變數內容 那用雙引號呢?當然就是可以看到變數的內容呀!! 譬如下面 $name = "你阿拔"; $age = "幾億年"; echo '我是$name,活了$age' echo "我是$name,活了$age"; 執行後會看到 我是$name,活了$age <==用單引號括住的結果 我是你阿拔,活了幾億年 <==用雙引號括住的結果 其他的特殊字元若要於字串中顯示,必須以反斜線表示 \ 譬如我要顯示C:\ echo 'C:\\' 這樣才會顯示出\ 字元: \n \r \t \\ \" \' \$ 意思: 換行並歸零 換行 跳一定點 顯示\ 顯示" 顯示' 顯示$ 最後.....介紹這個.沒錯,就是點... 字串相加是用. 譬如 $a = "open door"; $b = "開門"; echo $a . $b; //顯示open door開門 $c = Sa . $b; //$a跟$b加起來後丟給$c echo $c //$c叫出來也是open door開門 $d = $c . "快點"; //$c直接加上一串字 echo $d; //顯示open door開門快點 自己玩看看吧 @@" ●陣列型態 這要畫圖會比較好懂,但我還沒畫耶...改天補上好了 =_= 這個要幹嘛用?? 比方說公司有很多人,那我宣告一堆變數來給他們放名字 $name1,$name2,$name3,$name4,$name5,$name6..... 哇靠,瘋掉... 直接用array集合起來不就好了,反正都是name呀!! 嘿,這樣也比較好整理,不是嗎 XD!! 怎麼用??往下看吧(以上述來當例子) $name[0] = "Dino"; //array指標一定從0開始喔!! $name[1] = "John"; $name[2] = "Ken"; $name[3] = "Joe"; $name[4] = "Anna"; $name[5] = "Diablo"; //Diablo登場!!...沒事...來湊人數的.. @@ for ($i=0; $i<=5; $i++) //用for寫個小迴圈,$i設定為0,若$i小於或等於5,$i就累加 echo "$name[$i] <br>"; //將name[$i]印出,$i由for迴圈一直累加 之後將會印出 Dino John Ken Joe Anna Diablo 很好玩吧..XD 另一種array寫法 $name = array ( 0 => "Dino", 1 => "John", 2 => "Ken", 3 => "Joe", 4 => "Anna", 5 => "Diablo" ); for ($i=0; $i<=5; $i++) echo "$i : $name[$i] <br>"; //這邊我們多印一個$i來看$i的值 二維陣列 直接舉例子好了 @.@ 沒有圖不太會講,用法差不多 $陣列名稱 = array ( 0 => array ( 0 => 第0列,第0行的值 1 => 第0列,第1行的值 2 => 第0列,第2行的值 ) , 1 => array ( 0 => 第1列,第0行的值 1 => 第1列,第1行的值 2 => 第1列,第2行的值 ) , 看你要幾行幾列嚕.... ) ; 實作 $test = array ( 0 => array ( 0 => "第0列,第0行的值", 1 => "第0列,第1行的值", 2 => "第0列,第2行的值" ) , 1 => array ( 0 => "第1列,第0行的值", 1 => "第1列,第1行的值", 2 => "第1列,第2行的值" ) , 2 => array ( 0 => "第2列,第0行的值", 1 => "第2列,第1行的值", 2 => "第2列,第2行的值" ) , ) ; echo "顯示二維陣列內容<br>"; for ($i=0; $i<=2; $i++){ for ($j=0; $j<=2; $j++) echo "│" . $test[$i][$j] . "│" ; echo "<br>"; } ●物件型態 是瞎米碗膏?糟糕,我不知道怎麼說耶 先看一下結構好了... @.@ class 類別名稱 { var 本公司援交女?,值多少錢?; //物件資料成員的宣告 var 本公司總共賺了多少; . . . function 新增援交對向 //物件成員函數宣告 {.......} function 所有援交對向 {.......} function 所有收入 {.......} } 好...證明了一件事,我滿腦子....@#$% 嗯嗯,知道就好... 以上面的結構我來做個列子嚕.. @@ <? class sex { var $girl ; var $money ; function AddOneGirl($name,$cost) { $this->girl[]=$name ; $this->girl[]=$cost ; } function GetGirl() { $c=count ($this->girl); for ($i=0; $i<$c; $i+=2) { echo "名字:".$this->girl[$i]; echo "→→收費:".$this->girl[$i+1]."元<br>"; } } function GetMoney() { $c=count ($this->girl); $s=0; for ($i=1; $i<$c; $i+=2) { $s+=(integer) $this->girl[$i]; } return $s; } } ?> <html> <title>物件用法</title> <body> <? $customer1 = new sex; $customer2 = new sex; $customer1->AddOneGirl("援交妹A","1000"); $customer1->AddOneGirl("援交妹B","1500"); $customer1->AddOneGirl("援交妹C","3590"); $customer1->AddOneGirl("援交妹D","1200"); $customer2->AddOneGirl("援交妹E","2200"); $customer2->AddOneGirl("援交妹F","3900"); $customer2->AddOneGirl("援交妹G","1500"); $customer2->AddOneGirl("援交妹H","1000"); echo "第一位顧客消費:<br>"; $customer1->GetGirl(); echo "<hr>"; echo "第二位顧客消費:<br>"; $customer2->GetGirl(); echo "<hr>"; echo "總共金額:<br>"; $money=$customer1->GetMoney() + $customer2->GetMoney(); echo "今日營業額 $money 元"; ?> </body> </html> x2
|
引用 | 編輯
anstd
2005-11-22 13:22 |
2樓
▲ ▼ |
作者:紅軍©2005-11-22
版權沒有,盜版隨便 寫完這篇收到PM說我好色...真糟糕... XD ●外部資源型態 外部資源就是,開一個檔案啦,連結SQL啦,開一個A圖啦....(羞).. 阿...好啦...我承認我邊看A圖邊打這篇有的沒的....(暈)...||| 依照往例,先舉個例子,就拿PHP的好朋友MySQL來說明好了 ^^ $變數名稱 = MySQL來開房間('去哪找MySQL','誰去敲MySQL的門','敲門的鑰匙'); $aa = mysql_connect('localhost','root','); 這時候呀,aa老大就跑去跟MySQL開房間......(汗) 不是啦... XD,是$aa在此時就成為了一個資源型態的變數,負責去連繫位在本地端主機上的MySQL資料庫 這時若是連線成功,$aa的值就是True,那失敗當然就是False嚕!! 但上面的做法有個很大的缺點,就是MySQL的帳號密碼都在檔案之內 若這檔案被偷走了,哇靠,哪天你的MySQL被【先姦再殺】都不曉得.. 於是有了另外一個做法 先另外寫一個PHP程式,拿來放MySQL的帳號密碼,然後再把他給藏起來..嘿嘿 譬如先寫一個 <? $host = "localhost"; $user = "我的帳號"; $pass = "我的密碼"; $database = "使用的資料庫"; ?> 然後存檔,檔名最好別提到什麼db啦...sql啦...這樣白癡一看就知道這是瞎米碗膏糕了 @.@ 假設我先存成sex_girl.php,然後丟到根母乳下的母乳的母乳的點點點隨你爽......請將母乳改成目錄,正好看到刺激畫面..=o= 之後需要用到MySQL帳號密碼的PHP程式,叫他去讀那支sex_girl.php就行嚕 :-) 若是unix-like系統那就更完美了,把此程式權限給檔案擁有者就好,一般user?連看都別想看XD! 若是Win32...嗚...我不知道=_=,丟到某資料夾後去改http.conf嗎??? =o=算了..不管 譬如這樣 複製程式 <? . . //一堆讓別人看到混亂的程式碼 . include "./xx/xx/xx/sex_girl.php"; //看你把他藏到哪裡去 . //,就從哪裡導入→順便學會用include :-) . //這邊也是一堆看了眼睛脫窗的程式碼 . function sql($query) //這裡是用寫一個function的方式來使用SQL { //,還沒教但可以先看看結構 :-) global $host,$user,$pass,$database; //若不能用global請去找php.ini相關資訊 //,至少google查詢有一堆! $conn=mysql_connect( $host, $user, $pass); //把導入的變數內容 mysql_select_db($database,$conn); //再丟入mysql_connect... $result = mysql_query($query); mysql_close($conn); return $result; } . . //一堆程式碼讓人迷路 . ?> 嘿,這樣安全許多嚕,至少重要資訊不漏白 雖然有心人士還是能輕易找到藏資料的那支PHP,但至少做多一層保護,就少一份危機!! ●Null型態 NULL...完但,我又詞窮了..怎麼介紹它...=o=" 它算是一個特殊的型態,也不難 就是......什麼都沒有! 沒錯,就是什麼都沒有!要我講幾次XD!!! 有人會把0或者空白也想成什麼都沒有...但這關念錯的很離譜! 其實舉個例子會是最好理解的方式 $a = NULL; $b = 0; $c = " "; 這樣就很好懂了吧,a什麼也沒有,b是數字0,c是空白字元 再來一個...(打槍..阿不..打鐵要趁熱..嘿嘿...) $aa = NULL; //這就不用再說了吧.. unset($bb); //意思是unset()函數內的變數將被清除內容 echo $aa; //當然就是瞎米都沒有呀 echo $bb; //被清光光若還有就要去拜拜.. echo $cc; //PHP:hi,cc你是誰?...(根本沒這號人物,若回答表示撞鬼了@.@) 花了一點時間,簡單說完PHP的八種資料型態,若哪裡講的太爛想翻桌的要告訴我嘿..^^ 我的PHP學習筆記(1)─資料型態 (end) 版權沒有,盜版隨便..@.@ x1 |
引用 | 編輯
壞小孩
2006-02-03 00:00 |
4樓
▲ ▼ |
我對文章有問題
--------------------------------- 最後.....介紹這個.沒錯,就是點... 字串相加是用. 譬如 $a = "open door"; $b = "開門"; echo $a . $b; //顯示open door開門 $c = Sa . $b; //$a跟$b加起來後丟給$c echo $c //$c叫出來也是open door開門 $d = $c . "快點"; //$c直接加上一串字 echo $d; //顯示open door開門快點 自己玩看看吧 @@" --------------------------------- $c = Sa . $b; //$a跟$b加起來後丟給$c 裡面是Sa還是$a呢? ^^ x0 |
引用 | 編輯
bebo628
2006-04-08 02:03 |
8樓
▲ ▼ |
剛剛看到大大的範例 我本來不懂PHP的
但是看囉看覺得$money都沒用到很怪 所以改囉這樣跑出來也是一樣的答案 所以是不是說 var $money 這各的設定和這各$this->money有關呢 大大的範例把 var $money ;改成//var $money ;也行耶 所以我改成這樣 請大大看一下 我說的不對可否交我一下 我剛剛學 感謝您 複製程式 <?php class sex { var $girl ; var $money ; function AddOneGirl($name,$cost) { $this->girl[]=$name ; $this->money[]=$cost ; } function GetGirl() { $c=count ($this->girl); for ($i=0; $i<$c; $i+=1) { echo "名字:".$this->girl[$i]; echo "→→收費:".$this->money[$i]."元<br>"; } } function GetMoney() { $c=count ($this->money); $s=0; for ($i=0; $i<$c; $i+=1) { $s+=(integer) $this->money[$i]; } return $s; } } ?> <html> <title>物件用法</title> <body> <?php $customer1 = new sex; $customer2 = new sex; $customer1->AddOneGirl("援交妹A","1000"); $customer1->AddOneGirl("援交妹B","1500"); $customer1->AddOneGirl("援交妹C","3590"); $customer1->AddOneGirl("援交妹D","1200"); $customer2->AddOneGirl("援交妹E","2200"); $customer2->AddOneGirl("援交妹F","3900"); $customer2->AddOneGirl("援交妹G","1500"); $customer2->AddOneGirl("援交妹H","1000"); echo "第一位顧客消費:<br>"; $customer1->GetGirl(); echo "<hr>"; echo "第二位顧客消費:<br>"; $customer2->GetGirl(); echo "<hr>"; echo "總共金額:<br>"; $money=$customer1->GetMoney() + $customer2->GetMoney(); echo "今日營業額 $money 元"; ?> </body> </html> x0 |
引用 | 編輯
martinyueh3
2006-04-12 21:44 |
9樓
▲ |
對了....PHP程式碼可以用ZEND或base64加密
可以加上檔名混淆... -------------我是可愛的分格線----------------- 不要類別化的形式 POP的思想 (記得有看過.憑印象寫出) 函數:priceOfHouseDoor($num,$price) 用於計算ㄧ棟房子門的價格 $num 門的數量 $price 門的價格 function priceHouseDoor($num,$price) { return $num*$price; } echo "價格總和: " . priceHouseDoor(2,5) . " 元"; 或者乾脆更直接 $num=5; $price=8; echo $num*$price; 當了解物件導向後 class house { /****************************************** 函數:getDoorPrice($num,$price) 功能:計算所有的門的價格總和 參數:$num 門的數量,$price 每扇門的架格 ******************************************/ function getDoorPrice($num,$price) { return $num*$price; } } $house=new house; echo $house->getDoorPrice(2,5);//價格 我們一下子就看出來,這段代碼用到了OOP的代表 -- 類和實例化.那麼,這就是面向對像編程了嗎? 我再仔細一看,發現這個類其實只不過是上面的priceOfHouseDoor($num,$price)函數的面向對像形式. 嗯,現在我們先探討一下到底什麼才叫面向對像編程.我的理解是:面向對像編程有兩個核心內容.一是類,二是實例.類是對一類事物的抽像,而實 例是這一類事物中的個體.而實例的屬性(值)和方法(函數),則分別是這個個體的具體內容和動作. 我們再來看看上面的這個house類.它有一個方法,getDoorPrice($num,$price),引入了兩個參數.一個是房子的門的數量,一個是房子門價.我們 發現,當我們使用這個方法時,這兩個值是臨時構建的,並沒有與房子形成任何的聯繫.在實際生活中,一個房子裡的門與房子無任何聯繫,這是不 可以理解的...正如我們所知道的,OOP其實是我們真實世界的一個縮影.所以,OOP中的房子和房子的門無任何聯繫,也是不可理解的,是非OO的思想 那麼,我們應該如何使用真正的OO來實現以上功能呢?請看以下代碼: 代碼: class house { var $doors;//門的數量 var $pricePerDoors;//每扇門的價格 function setNumOfDoors($num){$this->doors=$num;}//設定門數量 function setPricePerDoor($price){$this->pricePerDoors=$price;}//設定每扇門的價格 /*************\ *獲得門的價格 * \*************/ function getDoorPrice() { return ($this->doors)*($this->pricePerDoors); } } $house=new house; $house->setNumOfDoors(2);//設定門數量 $house->setPricePerDoor(5);//設定每扇門的價格 echo $house->getDoorPrice();//輸出 我們很明顯地看到,以上代碼的門的數量和價格房子已經結合在了一起.這才是真正的面向對像. x0 |