国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

PHP 基礎知識代碼總結

2020-03-22 17:48:13
字體:
來源:轉載
供稿:網友
#require other.php //不會判斷是否重復,可能導致重復輸出 require_once other.php // 先判斷是否有重復引入 #include 111other.php #include_once other.php #require 和include區別: #include如果出現了錯誤會繼續執行, #而require則會終止程序 #echo 22 $i=2; $result=getNum($i);//傳值,也可以傳地址 echo $result;*/ /*html' target='_blank'>全局變量 global $a=1; function get() global $a;//可作用于局部內了 $a++; get(); echo $a; /*數組初始化 //$array=array(1.2,12, wrwe ,true); //echo count($array); $arr=array( log = daomul , mima = 123); echo count($arr). br/ foreach($arr as $key= $val) echo $key. = .$val. br/ $arr2=array( = 32 ,1= fdsf ,23,23); echo $arr2[ ]. br/ echo $arr2[2]. br/ #使用true作為下標,即是1 ,false :0; null: $arr3=array(123.4= arr3 echo $arr3[123]. br/ #顯示詳細數組信息 print_r($arr3); echo br/ var_dump($arr3); #數組可以動態增長 $arr4=array(2,3); echo $arr4[1]. br/ $arr4[2]= 11 22 333 444 #echo $arr4[2]; #字符串的拆分 explode $arr=explode( ,$arr4[2]); print_r($arr); foreach($arr as $key= $val)# (要循環的數組 as 數組下標變量) echo br/ $key= $val echo br/ .$arr[1]; unset($arr[1]);#銷毀數組元素后,關鍵字下標不會被重新填充組合 print_r($arr);*/ /*數組運算 疊加 $a=array( a = 12, b = $b=array( a = 21, c = $a=$a+$b; print_r($a);*/
/* 在 input中加 value= ?php echo $grades; ? 仿造百度搜索 */ error_reporting(E_ALL ^ E_NOTICE); $grades=$_REQUEST[ grade $grade=explode( ,$grades); $all=0; foreach($grade as $k= $v) $all+=$v; form action= test.php method= post input type= text name= grade value= ?php echo $grades; ? / input type= submit value= start / /form ?php echo 總的: .$all; /body /html

三、靜態變量

 ?php class Child public static $num=0; public $name; function __construct($name) //只有new之后才能調用 $this- name=$name; //靜態變量不能用this來訪問 public function join() self::$num+=1; //可以: Child::$num echo $this- name. you  $child1=new Child( k  $child1- join(); $child1=new Child( a  $child1- join(); $child1=new Child( b  $child1- join(); echo br/ .Child::$num; //類外只能是 類名::變量, //類內就能兩種? 

四、繼承/封裝/多態/抽象

/*class Child public static $num=0; public $name; //構造方法 function __construct($name) //只有new之后才能調用 $this- name=$name; //靜態變量不能用this來訪問 public function join($ifee) self::ifee+=1; //可以: Child::$num echo $this- name. you  $child1=new Child( k  $child1- join(); $child1=new Child( a  $child1- join(); $child1=new Child( b  $child1- join(); echo br/ .Child::$num; //類外只能是 類名::變量, //類內就能兩種*/
//靜態方法不能采用非靜態變量,只能使用非靜態變量 // 成員函數之間相互調用,需要用 $this- text(); //繼承 //1、子類只能繼承一個父類 // 如果想多重繼承可以考慮通過多次繼承: /*class A{} class B extends A{} class C extends B{}*/ //2、父類中的構造方法,在創造一個子類的對象實例的時候不會默認自動調用 //3、 子類中調用父類的方法 //父類名::方法名(); / parent::方法名(); parent小寫的 //覆蓋: # 子類的方法和父類的方法名稱和參數個數完全一樣,但不要求參數名相同 # 但是修飾符可以不同,但是子的范圍〉=父類范圍 # 父類是private則不能覆蓋 /*class A{ function F(){ echo 父類在此! br/ class B extends A{} class C extends B{ function F(){ echo 調用了父類了 br/ parent::F(); A::F(); $C1=new C(); $C1- */ //抽象類:父類中不需要被實例化,只讓子類繼承,也可以被調用里面的;達到代碼復用 #抽象類 abstract class name{} #抽象方法 abstract public cry(); #抽象類不一定也有抽象方法 #類包含抽象方法則必須為抽象類 #子類繼承抽象父類,則必須為抽象類或者實現繼承的所有,所有!方法
//接口:interfacde 接口{//屬性 //方法} # 只能定義規范,讓類去實現接口 ,不能自己實現, # class c implements 接口{} # 接口不能被實例化/接口能繼承其他多個接口/不能不為public # 一個類實現了一個接口,必須把接口以及其繼承的接口的方法全部實現 # (1 多個平級的類都要實現某個功能,只是實現方式不同,沒有繼承關系, #(2 項目經理定規范,讓其他程序員實現 /*interface Stu const A=90; public function add(); interface Stu2{} class MyStu implements Stu,Stu2 public function add() echo dddd .Stu::A. br/ $mystu=new MyStu(); $mystu- add(); echo OK .Stu::A; #獲得接口中的常量*/ //final 使類中的方法不被覆蓋 # final 不能修飾成員屬性 /*class A final public function get($salary) return $salary*3; class B extends A public function get($sal) return $sal*2; $b=new B(); $b- get( 21 #Cannot override final method A::get() */ //const常量 # 要賦初始值;不能后面賦值;不能加$等修飾符 # self::A ; 類名::A ;接口名::A; 等方式獲得常量A的值

五、文件操作以及錯誤處理

 ?php // 文件操作 /*處理錯的方式1 if(!file_exists( file1.txt )) echo not here  exit(); else $fp=fopen( file1.txt , r  echo 文件已打開  fclose($fp); /* 處理錯的方式2 if(!file_exists( a.txt )) die( wenjianbucunzai  else echo end */ /*處理錯的方式1 file_exists( b.txt ) or die( zhen de  echo end  //定義錯誤函數 /*function my_error($error,$err_message) echo font size= 5 color= red $error /front br/ //2 //echo 錯誤信息是: .$err_message; exit(); //改變系統默認的錯誤處理函數(“用戶自己定義的錯誤輸出函數”,“錯誤類型”) set_error_handler( my_error ,E_WARNING); $fp=fopen( aa.txt , r */ //錯誤觸發器 function my_error3($error,$err_message) echo 錯誤號: .$error; function my_error4($error,$err_message) echo big big!  set_error_handler( my_error3 ,E_USER_WARNING);// set_error_handler( my_error4 ,E_USER_ERROR);//致命錯誤,不繼續執行 $age=140; if($age 120) //調用觸發器的時候指定錯誤級別 trigger_error( 輸入的數字過大! ,E_USER_ERROR); //trigger_error( 輸入的數字過大! ,E_USER_WARNING); //exit(); echo ok ? 

六、錯誤日志

 ?php //錯誤日志 php.ini 中的error_log的配置 function my_error5($error,$err_meaasge) $err_info= 錯誤信息: .$error. -- .$err_meaasge; //echo time(); //輸出 當前日期 // 調整時區:默認時期是UTC和中國差8小時 PRC 或者Asia/Chongqing date_default_timezone_set( PRC  echo date( Y-m-d G-i-s  echo br/ .$err_info; #將錯誤存入系統文件中 error_log( 時間是: .date( Y-m-d G-i-s ). - .$err_info. /r/n ,3, myerror.txt //3個參數 set_error_handler( my_error5 ,E_USER_WARNING); $i=1; if($i 2) trigger_error( 輸入的數字過小 ,E_USER_WARNING);? 

七、捕獲異常

 ?php //處理異常 #注意事項:異常拋出之后,得代碼不會被繼續執行 #拋出異常之后如果沒用處理則會報錯 addUser( 1a  catch(Exception $e) echo 失敗信息: .$e- getMessage();//getLine() #可以繼續拋出 throw $e; #也可以頂一個頂級異常處理 # $i=8/0 fopen( a.txt , r ) 很難拋出異常 function addUser($user) if($user== a ) echo 登陸成功!  else throw new Exception( 用戶名錯誤!  /*#頂級異常處理 function my_error() echo 我是頂級異常處理! .e- getMeaasge(); set_error_handler( my_error */? 


相關推薦:

PHP調用ffmpeg對視頻截圖并拼接腳本

Yii2中的場景(scenario)和驗證規則(rule)的詳解

MixPHP、Yii和CodeIgniter的并發壓力測試的小結

以上就是PHP 基礎知識代碼總結的詳細內容,PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 兴安盟| 沛县| 遂昌县| 蓬溪县| 双桥区| 敦煌市| 和林格尔县| 化德县| 江都市| 樟树市| 丹巴县| 浦北县| 新龙县| 延川县| 田阳县| 海丰县| 宁乡县| 上虞市| 乌什县| 玉田县| 仙桃市| 德阳市| 六盘水市| 达拉特旗| 江山市| 无锡市| 禄丰县| 贡嘎县| 边坝县| 元谋县| 儋州市| 界首市| 尼勒克县| 高雄市| 乐陵市| 廊坊市| 寻乌县| 英山县| 平阴县| 鱼台县| 寻乌县|