php筆記,主要記錄php與c++、c#之類的語言的一些差異,以及一些有價值的細節。
這部分目前不是重點。伺服器檔案相關的操作主要用來寫配置、生成內容及生成靜態網頁;而gd用來繪圖,可以生成影象並輸出到客戶端。
gd估計是graphic generation,但是有本書上寫是gif draw,待確認,現在主要的作用也就是生成驗證碼及的水印。
超全域性陣列$_server
儲存了當前程式的伺服器相關資訊,比如$_server['php_selp']
為當前網頁的路徑。
gd輸出影象很方便:
以gif為例,輸出到客戶端:
header("content-type:image/gif");
imagegif($pic);
輸出為伺服器檔案:
imagegif($pic,"images/sample.gif");
獲取影象資訊使用getimagesize(string filename)
,返回乙個4個元素的陣列:
元素序號值說明
0影象寬度
整數,單位畫素
1影象高度
整數,單位畫素
2影象格式
類似imagetype_gif
這樣的預定義常數
3影象尺寸
字串,類似width="x" height="y"
如果只需要判斷影象格式,可以使用exif_imagetype(string filename)
,返回的值類似於imagetype_gif
這樣的預定義常數,這個函式執行更快。
讀取影象的函式類似於imagecreatefromgif(string filename)
。檔案路徑可以是本地檔案,也可以是**,相對位址和絕對位址都可以。返回值即影象的記憶體物件(resource)。
影象屬於resource物件,會占用較多記憶體,不使用時可以手動釋放以**記憶體空間,使用imagedestory($pic)
釋放物件。
類成員的呼叫使用->
操作符,例如$this->member
。靜態成員呼叫使用::
操作符,例如class::$member
。常量成員使用const定義,這不同於普通常量使用define,後者更類似c中的巨集。->
和::
輸入都很麻煩,不如c#中全部統一成.
,本身成員呼叫什麼的也不會互相衝突,估計是直譯器實現方面的問題。
類的建構函式和析構函式,分別為void __construct()
和void __destruct()
php的類屬於object,賦值基於引用。要對類進行複製使用clone關鍵字,例如:$object_new=clone $object_old
。物件的複製屬於淺複製(shadow copy),即複製物件,但複製後內部成員扔指向相同的物件。
類的繼承為單繼承,關鍵字extends
。類也支援介面,使用關鍵字inte***ce
和implements
。
由於php型別無關的靈活性,它的類有乙個重要特性trait。有點像c++的friend。另外,似乎也沒有模板template出現的必要。
未完
php基礎03 函式
分為內建函式和自定義函式 函式名不區分大小寫,不過在呼叫函式的時候,通常使用其在定義時相同的形式 php不支援函式過載,所以自定義函式不能與內建函式重名。值傳遞 函式內對引數值的改變不會影響函式外部的值 引用傳遞 傳址 有些情況下,可能希望在函式體內對引數的修改在函式體外也能反映 使用引用傳遞引數要...
JS基礎筆記03
var arr new array 2 var strarr new array a b c 陣列的字面量 var arr var stringarr a b 比較簡單的建立方法 陣列可以存任意型別的資料 陣列的計數從0開始 即下標 單獨賦值 arr 0 234 資料分為簡單型別 值型別 和複雜資料...
PHP學習筆記03 函式
1 public w3c dtd html 4.01 transitional en 23 1.簡單函式示例,建立乙個n m的table5 php中的函式格式,其中可以沒有返回值 6 function 引數1,引數2.10 在函式定義之前和之後都可以呼叫函式 11 12 create table 3...