欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      php課程總結(jié)

      時(shí)間:2019-05-11 23:34:00下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《php課程總結(jié)》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《php課程總結(jié)》。

      第一篇:php課程總結(jié)

      一、時(shí)間和地點(diǎn):

      每周四上午在F311上課。

      二、課程內(nèi)容:

      通過這段時(shí)間的學(xué)習(xí),我對PHP中的MySQL數(shù)據(jù)庫有了一定的理解。由于以前沒有基礎(chǔ),在老師講課的過程開始有點(diǎn)費(fèi)盡,盡量記了一些。首先學(xué)習(xí)了一些定義:MySQL是一個(gè)小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng),開發(fā)者為瑞典MySQL AB公司。目前MySQL被廣泛地應(yīng)用在Internet上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點(diǎn),許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫。

      數(shù)據(jù)(Data)是對客觀事物的符號表示,如圖形符號、數(shù)字、字母等,數(shù)據(jù)是數(shù)據(jù)庫中存儲的基本對象。在日常生活中,人們直接用語言來描述事物;在計(jì)算機(jī)中,為了存儲和處理這些事物,就要將事物的特征抽象出來組成一個(gè)記錄來描述。之后,進(jìn)行數(shù)據(jù)的編寫,知道了數(shù)據(jù)庫的發(fā)展史:人工管理階段(人力手工整理存儲數(shù)據(jù))、文件系統(tǒng)階段(使用磁盤文件來存儲數(shù)據(jù))、數(shù)據(jù)庫系統(tǒng)階段、關(guān)系型數(shù)據(jù)庫、高級數(shù)據(jù)庫階段、“關(guān)系-對象”型數(shù)據(jù)庫。再然后學(xué)習(xí)了數(shù)據(jù)庫的類型:

      (1)純文本數(shù)據(jù)庫: 純文本數(shù)據(jù)庫是只用空格符、制表符和換行符來分割信息的文本文件。適用于小型應(yīng)用,對于大中型應(yīng)用來說它存在諸多限制:

      ? 只能順序訪問,不能進(jìn)行隨機(jī)訪問。? 查找數(shù)據(jù)和數(shù)據(jù)關(guān)系或多用戶同時(shí)訪問進(jìn)行寫操作時(shí)非常困難。

      (2)關(guān)系數(shù)據(jù)庫:

      由于純文本數(shù)據(jù)庫存在諸多局限,所以人們開始研究數(shù)據(jù)模型,設(shè)計(jì)各種類型的使用方便的數(shù)據(jù)庫。在數(shù)據(jù)庫的發(fā)展史上,最具影響的數(shù)據(jù)庫模型有:層次模型、網(wǎng)狀模型和關(guān)系模型。其中,關(guān)系模型是目前應(yīng)用最廣泛和最有發(fā)展前途的一種數(shù)據(jù)模型,其數(shù)據(jù)結(jié)構(gòu)簡單,當(dāng)前主流的數(shù)據(jù)庫系統(tǒng)幾乎都采用關(guān)系模型。數(shù)據(jù)庫管理系統(tǒng):數(shù)據(jù)庫管理系統(tǒng)(Database Management System)是一種操縱和管理數(shù)據(jù)庫的大型軟件,是用于建立、使用和維護(hù)數(shù)據(jù)庫,簡稱DBMS。它對數(shù)據(jù)庫進(jìn)行統(tǒng)一的管理和控制,以保證數(shù)據(jù)庫的安全性和完整性。

      MySQl特征:性能快捷、優(yōu)化SQL語言、容易使用、多用戶支持、可移植性和開放源代碼、遵循國際標(biāo)準(zhǔn)和國際化支持、為多種編程語言提供API。

      ? mysql命令:mysql命令

      mysql-h host_name-u user_name –ppassword ? h:當(dāng)連接MySQL服務(wù)器不在同臺主機(jī)時(shí),填寫主機(jī)名或IP地址 ? u:登錄MySQL的用戶名 ? p:登錄MySQL的密碼

      ? 注意:密碼如果寫在命令行的時(shí)候一定不能有空格。如果使用的系統(tǒng)為linux并且登陸用戶名字與MySQL的用戶名相同即可不用輸入用戶名密碼,linux默認(rèn)是以root登陸,windows默認(rèn)用戶是ODBC mysql程序常用命令:選定默認(rèn)數(shù)據(jù)庫:use dbname;顯示所有數(shù)據(jù)庫:show databases;顯示默認(rèn)數(shù)據(jù)庫中所有表:show tables;放棄正在輸入的命令:c;顯示命令清單:h;退出mysql程序:q;查看MySQL服務(wù)器狀態(tài)信息:s 接著我們講了數(shù)據(jù)庫基礎(chǔ)知識,在此課中我們了解了數(shù)據(jù)庫: 數(shù)據(jù)庫由一批數(shù)據(jù)構(gòu)成的有序集合,這些數(shù)據(jù)被分門別類地存放在一些結(jié)構(gòu)化的數(shù)

      據(jù)表(table)里,而數(shù)據(jù)表之間又往往存在交叉引用的關(guān)系,這種關(guān)系使數(shù)據(jù)庫又被稱為關(guān)系型數(shù)據(jù)庫 檔案柜=數(shù)據(jù)庫 抽屜=表 文件=記錄

      一、數(shù)據(jù)庫的組成以及功能

      1、SQL語法組成:DML(Data Manipulation Language數(shù)據(jù)操作語言)

      ——查詢、插入、刪除和修改數(shù)據(jù)庫中的數(shù)據(jù); ——SELECT、INSERT、UPDATE、DELETE等;

      DCL(Data Control Language數(shù)據(jù)控制語言)

      ——用來控制存取許可、存取權(quán)限等; ——GRANT、REVOKE 等;

      DDL(Data Definition Language數(shù)據(jù)定義語言)——用來建立數(shù)據(jù)庫、數(shù)據(jù)庫對象和定義其列

      ——CREATE TABLE、DROP TABLE、ALTER TABLE 等 功能函數(shù)

      ——日期函數(shù)、數(shù)學(xué)函數(shù)、字符函數(shù)、系統(tǒng)函數(shù)等

      2、MysQl數(shù)據(jù)庫增刪改查:

      數(shù)據(jù)庫的操作:增、刪、改、查

      增 create database name、刪 drop database name、查 show databases 改 沒有修改數(shù)據(jù)庫的語句、可以修改數(shù)據(jù)庫的名字

      Myisan 直接進(jìn)入mysql data文件夾進(jìn)行修改、Innodb 不可以改名,只能重建 幾個(gè)重要的數(shù)據(jù)庫:

      Informatio_schema 存儲數(shù)據(jù)庫的各種信息用戶信息,列表信息,字符集信息等等?.Mysql用戶權(quán)限信息

      Test 僅供用戶使用的測試數(shù)據(jù)庫,可以隨意使用 Cluster 服務(wù)器數(shù)據(jù)集,不可以刪除

      Phpmyadmin mysql圖形管理軟件的一種web

      3、數(shù)據(jù)表的操作

      Use 數(shù)據(jù)庫名; 增 create table 表名(字段名 字段類型[約束條件],字段名 字段類型[約束條件]。。)

      刪 drop table 表名 改

      查 show tables

      4、數(shù)據(jù)類型種類:

      ? 數(shù)值型

      分為整型和浮點(diǎn)型

      ? 整型:可以由十進(jìn)制和十六進(jìn)制表示

      整數(shù)由數(shù)字序列組成,如:1,100。

      由十六進(jìn)制表示方法:0x且后面加1—9和A—F 的任意數(shù)字或字母,并且0x中的X不能大寫。

      ? 浮點(diǎn)型:

      浮點(diǎn)數(shù)由一個(gè)數(shù)字加一個(gè)小數(shù)點(diǎn)再加上一個(gè)數(shù)字組成。兩個(gè)數(shù)字序列不能同時(shí)為空。

      數(shù)值列的完整性約束

      (1)AUTO_INCREMENT 自動標(biāo)識列,在需要產(chǎn)生唯一標(biāo)志符號或者順序值時(shí)候,可用此屬性。值一般從1開始,每行增加1,在插入NULL到一個(gè)AUTO_INCREMENT列時(shí),MySQL會插入一個(gè)比該列中當(dāng)前最大值大1 的值,一個(gè)表中最多能有一個(gè)有此屬性的列。對于想使用此屬性的列應(yīng)該定義為NOT NULL,并定義為PRIMARY KEY 或者定義為UNIQUE鍵。

      舉例:

      create table t(id int auto_increment not null primary key);(2)UNSIGNED 無符號,此屬性禁用負(fù)值,將數(shù)值的取值范圍從零開始。舉例:

      create table t(num tinyint , num2 tinyint unsigned);(3)NULL和NOT NULL 默認(rèn)為NULL,即插入值時(shí)沒有在此字段插入值時(shí)自動填NULL,如果指定了NOT NULL,則必須在插入值時(shí)在此字段添入值,不允許插入NULL值。(4)DEFAULT 可以通過此屬性來指定一個(gè)缺省值,即如果沒有在此列添加值,那么默認(rèn)添加DEFAULT后指定值。(5)ZEROFILL 前導(dǎo)零填充數(shù)值類型值以達(dá)到列的顯示寬度。

      舉例:

      create table test2(num1 int default 1,num2 int zerofill);CHAR和VARCHAR類型:

      CHAR類型和VARCHAR類型長度范圍都是0~255之間的大小。他們之間的差別在于MySQL處理存儲的方式:

      CHAR把這個(gè)大小視為值的準(zhǔn)確大?。ㄓ每崭裉钛a(bǔ)比較短的值)。

      VARCHAR類型把它視為最大值并且只使用了存儲字符串實(shí)際上需要的字節(jié)數(shù)(增加了一個(gè)額外的字節(jié)記錄長度)。因而,較短的值當(dāng)被插入一個(gè)語句為VARCHAR類型的字段時(shí),將不會用空格填補(bǔ)(然而,較長的值仍然被截短)。

      5、創(chuàng)建數(shù)據(jù)庫:

      建立數(shù)據(jù)庫操作:

      語法:create database 數(shù)據(jù)庫名

      敘述:創(chuàng)建一個(gè)具有指定名稱的數(shù)據(jù)庫。如果要創(chuàng)建的數(shù)據(jù)庫已經(jīng)存在,或者沒有創(chuàng)建它的適當(dāng)權(quán)限,則此語句失敗。例:建立一個(gè)student庫。

      mysql> create database student;創(chuàng)建表:建立表操作:

      語法:create table 表名(? 列名1 列類型 [<列的完整性約束>], ? 列名2 列類型 [<列的完整性約束>], ?......);敘 述:在當(dāng)前數(shù)據(jù)庫下新創(chuàng)建一個(gè)數(shù)據(jù)表。

      列類型:表示該列的數(shù)據(jù)類型。例:

      建立一個(gè)表school,其由兩列組成,第一列屬性為非空,并做為主鍵,并自增

      ? create table school(? school_id int(10)not null auto_increment primary key, ? school_name varchar(20)

      ?);

      6、主鍵與外鍵:數(shù)據(jù)表之間的關(guān)聯(lián)/引用關(guān)系是依靠具體的主鍵(primary key)和外鍵(foreign key)建立起來的。

      (1)主鍵:幫助MySQL以最快的速度把一條特點(diǎn)的數(shù)據(jù)記錄的位置確定下來。

      主鍵必須是唯一的

      主鍵應(yīng)該是緊湊的,因此整數(shù)類型比較適合

      主鍵

      create table student(sid int not null auto_increment, name varchar(20)not null, primary key(sid));(2)外鍵:引用另外一個(gè)數(shù)據(jù)表的某條記錄。

      外鍵列類型盡可能與主鍵列類型保持一致 外鍵列應(yīng)該加上NOT NULL 外鍵(自動檢查外鍵是否匹配,僅適用InnoDB)

      create table score(cid int not null auto_increment primary key, score int, sid int, foreign key(sid)references student(sid));

      7、刪除數(shù)據(jù)庫或表操作

      ? 刪除表操作

      語法:drop table [if exists] tab_name [,tab_name]...敘述:從數(shù)據(jù)庫中刪除給定的表。如果給出if exists 子句,則刪除不存在的表不會出錯(cuò)。

      ? 刪除數(shù)據(jù)庫操作

      語法:drop database [if exists] db_name 敘述:刪除給定的數(shù)據(jù)庫。在刪除一個(gè)數(shù)據(jù)庫后,它就永遠(yuǎn)沒有了,因此要特別小心。如果給出if exists 子句,則刪除不存在的數(shù)據(jù)庫不會出錯(cuò)。

      更改表結(jié)構(gòu)操作:

      ?

      語法:alter table 表名 action;? 說明:action 可以是如下語句:

      ? add 列名 建表語句 [first | after 列名] 可以為表添加一列,如果沒指定first或者after,則在列尾添加一列,否則在指定列添加新列

      ? add primary key(列名)為表添加一個(gè)主鍵,如果主鍵已經(jīng)存在,則出現(xiàn)錯(cuò)誤

      ? add foreign key(列名)references 表名(列名)為表添加一個(gè)外鍵

      ? alter 列名 set default 默認(rèn)值

      可以更改指定列默認(rèn)值

      舉例1:

      向people表中添加字段address2,類型為varchar,最大長度為100 ? alter table people add address2 varchar(100);

      8、插入記錄操作

      ? 敘述:

      如果表名后面沒寫字段名,則默認(rèn)是向所有的字段添加值,另外字符串值應(yīng)該用‘ ’或“ ”引號括起來

      ? 舉例1:向people表中添加一條記錄:

      insert into people(name,age)

      values(“zhangsan”,20);多表查詢—分類

      ? 連接查詢

      ? 同時(shí)涉及多個(gè)表的查詢稱為連接查詢 ? 用來連接兩個(gè)表的條件稱為連接條件

      ? 內(nèi)連接(INNER JOIN)? 外連接

      ——左外聯(lián)結(jié)(LEFT JOIN)——右外聯(lián)結(jié)(RIGHT JOIN)

      二、算數(shù)運(yùn)算符

      (1)用字符串表示的數(shù)字在任何可能便于計(jì)算的地方都被自動地轉(zhuǎn)換為數(shù)字。當(dāng)執(zhí)行轉(zhuǎn)換時(shí),MySQL遵循兩個(gè)基本規(guī)則:

      ? 如果第一位是數(shù)字的字符串被用于一個(gè)算數(shù)運(yùn)算中,那么它被轉(zhuǎn)換為這個(gè)數(shù)字的值。? 如果一個(gè)包含字符和數(shù)字混合的字符串不能被正確的轉(zhuǎn)換為數(shù)字,那么它被轉(zhuǎn)換成0。

      (2)比較運(yùn)算符

      ? 比較運(yùn)算符允許我們對表達(dá)式的左邊和右邊進(jìn)行比較。一個(gè)比較運(yùn)算符的結(jié)果總是1(真),0(假),或是為NULL(不能確定)。? 比較運(yùn)算符可以用于比較數(shù)字和字符串。數(shù)字作為浮點(diǎn)值比較,而字符串以不區(qū)分大小寫的方式進(jìn)行比較(除非使用特殊的BINARY二進(jìn)制關(guān)鍵字)

      在第二章中我們學(xué)習(xí)到了數(shù)據(jù)庫的連接。

      1、mysql 連接:

      七劍下天山

      // 第一賤:連接數(shù)據(jù)庫

      ? mysql_connect — 打開一個(gè)到 MySQL 服務(wù)器的連接

      ? mysql_pconnect — 打開一個(gè)到 MySQL 服務(wù)器的持久連接

      ? //resource mysql_connect([ string $server [, string $username [, string

      $password [, bool $new_link [, int $client_flags ]]]]])(在php手冊中有 ? //mysql 連接:

      ? // mysql_connect 非持久連接,效率較低,對資源消耗小 ? // mysql_pconnect 持久連接,效率高,消耗大量的資源 ? $link=mysql_connect('localhost:3306','root','root');? var_dump($link);// 第二賤:判斷連接是否成功

      ? //第二賤:判斷連接是否成功//mysql_errno — 返回上一個(gè) MySQL 操作中的錯(cuò)誤信息的數(shù)字編碼

      ? //mysql_error — 返回上一個(gè) MySQL 操作產(chǎn)生的文本錯(cuò)誤信息

      ? //echo mysql_errno();正確返回0,錯(cuò)誤返回一個(gè)正整數(shù),輸出最近一次的mysql錯(cuò)誤。

      // 第三賤:設(shè)置字符集

      ? bool mysql_set_charset(string $charset [, resource $link_identifier ])? //mysql_set_charset — Sets the client character set ? //bool mysql_set_charset(string $charset [, resource $link_identifier ])? mysql_set_charset('utf8');// 第四賤:選擇數(shù)據(jù)庫

      ? //mysql_select_db — 選擇 MySQL 數(shù)據(jù)庫 ? mysql_select_db('company11');? mysql_select_db — 選擇 MySQL 數(shù)據(jù)庫 ? 說明

      ? bool mysql_select_db(string $database_name [, resource $ link_identifier ])? 成功時(shí)返回 TRUE,或者在失敗時(shí)返回 FALSE.? mysql_select_db()設(shè)定與指定的連接標(biāo)識符所關(guān)聯(lián)的服務(wù)器上的當(dāng)前激活數(shù)據(jù)庫。如果沒有指定連接標(biāo)識符,則使用上一個(gè)打開的連接。如果沒有打開的連接,本函數(shù)將無參數(shù)調(diào)用 mysql_connect()來嘗試打開一個(gè)并使用之。

      // 第五賤:準(zhǔn)備并且發(fā)送sql語句

      ? //$sql='select * from biao';? //mysql_query($sql)//mysql_query — 發(fā)送一條 MySQL 查詢

      //resource mysql_query(string $query [, resource $link_identifier ])// 第六賤: 判斷執(zhí)行結(jié)果,或者遍歷結(jié)果集

      ? //增刪改的判斷

      ? $result=mysql_query($sql);(放入第五賤)? if($result && mysql_affected_rows()){ ?

      echo '執(zhí)行成功';? }else{ ?

      echo '執(zhí)行失敗,或者不存在數(shù)據(jù)';? } ? $sql=“insert into zhiyuan(name,sex,bumen)values('zhou',0,2)”;? $sql=“update zhiyuan set bumen=3 where name='小王'”;? $sql=“insert into zhiyuan(name,sex,bumen)values('小王',0,2)”;// 第七賤:萬賤歸宗 */

      之后,學(xué)習(xí)了面向?qū)ο蟆?/p>

      1、面對對象技術(shù)的基本觀點(diǎn)如下:

      (1)客觀世界由對象組成。

      (2)具有相同數(shù)據(jù)(屬性)和操作(方法)的對象可歸納成類。

      (3)類可以派生出子類,子類除了繼承父類的全部特性外還可以有自己的特性(4)對象之間的聯(lián)系通過消息傳遞(可理解為方法調(diào)用)來維系。

      假設(shè)m1是類Manager的一個(gè)實(shí)例(或?qū)ο?,當(dāng)外界要求把這個(gè)對象所 代表的那位經(jīng)理的級別改變?yōu)?時(shí),就應(yīng)以下面的方式向這個(gè)對象發(fā)出一條消息: ml.ChangeLevel(2)消息傳遞

      PHP的WEB技術(shù)面向?qū)ο笫欠略飕F(xiàn)實(shí)對象建立的,他們也有狀態(tài)和行為。軟件對象在一個(gè) 或多個(gè)變量中維護(hù)它的狀態(tài)。變量是一個(gè)由標(biāo)識符命名的數(shù)據(jù)項(xiàng)。對象用方法實(shí)現(xiàn)它的行為。方法是與一個(gè)對象相關(guān)聯(lián)的函數(shù)(子過程)。

      ? 對象有二個(gè)性質(zhì):狀態(tài)(state)和行為(behavior)。? 對象是一個(gè)封裝數(shù)據(jù)屬性和操作行為的實(shí)體.2、面向?qū)ο?/p>

      將相關(guān)的變量和方法封裝進(jìn)一個(gè)簡潔的軟件組合是一種簡單而強(qiáng)大的思想,它給軟件開發(fā)人員提供了兩個(gè)主要的好處:

      模塊化:一個(gè)對象的源代碼可以獨(dú)立于其他對象的源代碼進(jìn)行編寫和維護(hù)。另外,對象很容易地在系統(tǒng)中傳遞。你可以將你的自行車對象交給其他人,而它仍然會正常工作。(重構(gòu)、代碼復(fù)用)

      隱藏信息:對象有一個(gè)公共接口,其他對象可以使用這個(gè)接口與它通信。對象可以維護(hù)私有的信息和方法,可以在任何時(shí)候改變這些信息和方法,而不影響依賴于它的其他對象。你不需要理解你自行車使用的變速齒輪機(jī)制就能夠使用它。即是:封裝

      3、類

      類是一組具有相同數(shù)據(jù)結(jié)構(gòu)和相同操作對象的集合。

      在現(xiàn)實(shí)世界中,常常有相同類型的許多對象。例如,你的自行車只是世界上的許多自行車之一。用面向?qū)ο蟮男g(shù)語來說,你的自行車對象是自行車類的一個(gè)實(shí)例。自行車有一些共有的狀態(tài)(當(dāng)前的變速齒輪、當(dāng)前的步調(diào)、兩個(gè)輪子)和行為(改變變速齒輪、剎車)。但是,每輛自行車狀態(tài)獨(dú)立于其他自行車狀態(tài),也就說每輛自行車的狀態(tài)可以互不相同。

      ? function jia($no1,$no2){ ?

      return $no1+$no2;? } ? function jian($no1,$no2){ ?

      return $no1-$no2;? } ? function cheng($no1,$no2){ ?

      return $no1*$no2;? } ? function chu($no1,$no2){ ?

      return $no1/$no2;? } ? function max(){

      ? echo '我是最大值';? }

      4、類的成員-字段(1)、聲明字段 name;?>(2)使用字段

      ? 與變量不同,使用字段要使用->操作符,而不是美元符號

      – $employee=new Staff();– echo $employee->name;? 當(dāng)在定義字段的類中引用字段時(shí)要使用$this關(guān)鍵字。$this表示當(dāng)前類

      5、、構(gòu)造函數(shù)

      構(gòu)造函數(shù)是類中的一個(gè)特殊函數(shù),當(dāng)使用 new 操作符創(chuàng)建一個(gè)類的實(shí)例時(shí),構(gòu)造函數(shù)將會自動調(diào)用。

      Php5中以__construct()作為構(gòu)造函數(shù)。而php4中是以將和類名相同的函數(shù)作為構(gòu)造函數(shù)。為了兼容php5先尋找__construct(),如果找不到再尋找以類名命名的構(gòu)造函數(shù)

      如果一個(gè)類沒有構(gòu)造函數(shù),則調(diào)用基類的構(gòu)造函數(shù) Class Staff { function __construct()//兩個(gè)下劃線 { echo “調(diào)用了構(gòu)造函數(shù)”;} function Staff(){ echo “調(diào)用了構(gòu)造函數(shù)2”;} } $employee=new Staff();? //構(gòu)造方法 函數(shù)

      ? //特點(diǎn),就是在new 的時(shí)候也就是調(diào)用這個(gè)殼的時(shí)候就進(jìn)行了調(diào)用的方法

      ? //寫法:php4中只認(rèn)識一種 類名和函數(shù)名相同的話,那個(gè)函數(shù)就是使構(gòu)造方法 ? //php5中 類名和函數(shù)名相同/__construct()都是構(gòu)造方法

      ? //注意:構(gòu)造方法在類中只能有一個(gè) 不要寫多個(gè) 使用PHP4的或者PHP5的兩個(gè)相同構(gòu)造方法會報(bào)重載錯(cuò)誤

      ? //但是如果一個(gè)PHP4的一個(gè)PHP5的構(gòu)造方法就不會報(bào)錯(cuò),但是邏輯有問題

      ? //構(gòu)造方法的參數(shù)傳值,是在調(diào)用類的時(shí)候()放的就是為構(gòu)造方法準(zhǔn)備的參數(shù) //析構(gòu)方法 函數(shù) __destruct()? //特點(diǎn),析構(gòu)方法是在調(diào)用完之后,自動執(zhí)行 在接收類調(diào)用的變量改值的時(shí)候/或者頁面結(jié)束 自動啟動

      ? //聲明關(guān)鍵字 [private protected public var ]

      6、析構(gòu)函數(shù)

      (1)析構(gòu)函數(shù)會在到某個(gè)對象的所有引用都被刪除或者當(dāng)對象被顯式銷毀時(shí)執(zhí)行。腳本執(zhí)行結(jié)束時(shí),php會撤銷內(nèi)存中的所有對象,因此如果實(shí)例化時(shí)創(chuàng)建的信息都會保留到內(nèi)存中,就不需要顯式的聲明析構(gòu)函數(shù)。但是如果創(chuàng)建了不那么容易丟失的數(shù)據(jù)時(shí)(例如連接數(shù)據(jù)庫)就應(yīng)當(dāng)定制析構(gòu)函數(shù)進(jìn)行銷毀數(shù)據(jù)。Class Staff { function __construct(){ echo “調(diào)用了構(gòu)造函數(shù)”;} function __destruct(){ echo “調(diào)用了析構(gòu)函數(shù),需要釋放和銷毀的“;} } $employee=new Staff();(2)類的成員-屬性_set()__set()//兩個(gè)下劃線

      $this->$propname=$propvalue;

      print ”ok
      “;} } $model=new Test();$model->age=25;$model->title=”English“;echo ”


      “;print ”age: “.$model->age.”
      “;echo ”
      “;print ”title: “.$model->title.”
      “;?> 可用來驗(yàn)證某個(gè)屬性是否存在或增加新的屬性

      7、控制對類的成員訪問

      (1)public :在任何位置都可以讀取和修改這個(gè)成員變量或者調(diào)用這個(gè)方法。這個(gè)修飾符在外部代碼使用,由給定類中的代碼使用,或者在擴(kuò)展給定類的功能的類中使用。

      (2)private : 只有這個(gè)類中的代碼才能讀取和修改私有變量或者調(diào)用私有成員函數(shù)。其他代碼、類或者擴(kuò)展這個(gè)類的功能類(子類)不能使用私有條目。

      (3)protected : 外部代碼與給定類不相關(guān)的其他類不能讀取或者修改使用了關(guān)鍵字protected的成員變量,也不能調(diào)用受保護(hù)的成員函數(shù)。(4)abstract 定義抽象類

      (5)final 子類方法不允許覆蓋父類方法 先了解,下一章重點(diǎn)闡述

      8、靜態(tài)類成員

      當(dāng)需要一些所有類對象共享的字段和方法時(shí)就需要創(chuàng)建一些靜態(tài)的字段和方法。Class Staff { public static $name=”靜態(tài)字段“;static function show(){

      echo self::$name,”
      “;} } echo Staff::$name,”
      “;Staff::show();

      9、常量

      常量(const)即不會在類中改變的值,對于該類的任何實(shí)例化的對象來說 常量值在這些對象的整個(gè)生命周期中都保持不變 Class Staff { const CITY=“北京”;} echo Staff::CITY;

      之后,學(xué)習(xí)了PHP正則表達(dá)式

      1、正則表達(dá)式簡介

      正則表達(dá)式是用于描述字符排列模式一種語法規(guī)則。它主要用于字符串的模式分割、匹配、查找及替換操作。到目前為止,我們前面所用過的精確(文本)匹配也是一種正則表達(dá)式。

      在PHP中,正則表達(dá)式一般是由正規(guī)字符和一些特殊字符(類似于通配符)聯(lián)合構(gòu)成的一個(gè)文本模式的程序性描述。

      在程序語言中,通常將模式表達(dá)式(即正則表達(dá)式)包含在兩個(gè)反斜線“/”之間,如“/apple/”。用戶只要把需要匹配的模式內(nèi)容放入定界之間即可。

      如果使用一個(gè)沒有特殊字符的正則表達(dá)式,相當(dāng)于純文本搜索,使用strstr()函數(shù)也可達(dá)到同樣的效果。

      2、^ 和 $ ”^The“: 開頭一定要有”The“字符串;”of despair$“: 結(jié)尾一定要有”of despair“ 的字符串;那么, ”^abc$“: 就是要求以abc開頭和以abc結(jié)尾的字符串,實(shí)際上是只有abc匹配

      ”notice“: 匹配包含notice的字符串 你可以看見如果你沒有用我們提到的兩個(gè)字符(最后一個(gè)例子),就是說 模式(正則表達(dá)式)可以出現(xiàn)在被檢驗(yàn)字符串的任何地方,你沒有把他鎖定到兩邊(開始或結(jié)束)

      3、'*', '+',和 '?', * 表示出現(xiàn)0次或1次或多次 相當(dāng)于{0,}, + 表示出現(xiàn)1次或多次 相當(dāng)于{1,}, ? 表示出現(xiàn)0次或1次 相當(dāng)于{0,1}, 這里是一些例子: ”ab*“: 和ab{0,}同義,匹配以a開頭,后面可以接0個(gè)或者N個(gè)b組成的字符串(”a“, ”ab“, ”abbb“, 等);”ab+“: 和ab{1,}同義,同上條一樣,但最少要有一個(gè)b存在(”ab“, ”abbb“, 等.);”ab?“:和ab{0,1}同義,可以沒有或者只有一個(gè)b;”a?b+$“: 匹配以一個(gè)或者0個(gè)a再加上一個(gè)以上的b結(jié)尾的字符串.要點(diǎn), '*', '+',和 '?'只管它前面那個(gè)字符.4、[ ] 中括號括住的內(nèi)容只匹配一個(gè)單一的字符

      ”[ab]“: 匹配單個(gè)的 a 或者 b(和 ”a|b“ 一樣);”[a-d]“: 匹配'a' 到'd'的單個(gè)字符(和”a|b|c|d“ 還有 ”[abcd]“效果一樣);一般我們都用[a-zA-Z]來指定字符為一個(gè)大小寫英文 ”^[a-zA-Z]“: 匹配以大小寫字母開頭的字符串 ”[0-9]%“: 匹配含有 形如 x% 的字符串

      ”,[a-zA-Z0-9]$“: 匹配以逗號再加一個(gè)數(shù)字或字母結(jié)尾的字符串

      5、正則表達(dá)式的語法規(guī)則

      正則表達(dá)式是主要由: ? 原子(普通字符,如英文字符)? 元字符(有特殊功用的字符)? 以及模式修正字符組成。

      一個(gè)正則表達(dá)式中至少包含一個(gè)原子。

      6、PHP中的正則表達(dá)式函數(shù)

      在PHP中有兩套正則表達(dá)式函數(shù)庫。

      ? 一套是由PCRE(Perl Compatible Regular Expression)庫提供的。PCRE庫使用和perl相同的語法規(guī)則實(shí)現(xiàn)了正則表達(dá)式的模式匹配,其使用以“preg_”為前綴命名的函數(shù)。

      ? 另一套是由POSIX(Portable Operation System interface)擴(kuò)展庫提供的。POSIX擴(kuò)展的正則表達(dá)式由POSIX 1003.2定義,一般使用以“ereg_”為前綴命名的函數(shù)。

      ? 兩套函數(shù)庫的功能相似,執(zhí)行效率稍有不同。一般而言,實(shí)現(xiàn)相同的功能,使用PCRE庫的效率略占優(yōu)勢。

      7、、正則表達(dá)式的拆分

      1split()和spliti()函數(shù)原型:

      ? array split(string $pattern,string $string[,int $limit])本函數(shù)返回一個(gè)字符串?dāng)?shù)組,每個(gè)單元為$string經(jīng)正則表達(dá)式$pattern作為邊界分割出的子串。如果設(shè)定了$limit,則返回的數(shù)組最多包含$limit個(gè)單元。而其中最后一個(gè)單元包含了$string中剩余的所有部分。Spliti是split的忽略大小版本。

      之后,學(xué)習(xí)了文件系統(tǒng)處理。

      open()打開文件或者URL $file=fopen('1.txt','r');//只讀模式打開 //r 只能讀取不能寫入

      //r+ 增強(qiáng)的讀寫模式 表示以只讀模式打開,但是仍然可以進(jìn)行部分的寫入操作 //w 寫模式 打開文件的時(shí)候,原有內(nèi)容會被清空 如果文件不存在就新建一個(gè)文件,再打開

      //w+ 增強(qiáng)的讀寫模式

      //a 追加模式(寫)不會清空原有文件而是在源文件的基礎(chǔ)上進(jìn)行累加 不存在也可以新建

      //a+ 增強(qiáng)的追加模式(讀寫)/x異或模式 文件存在就報(bào)錯(cuò),不存在就創(chuàng)建 //x+增強(qiáng)的異或模式 //b 打開二進(jìn)制文件

      1、文件的打開

      2、文件的刪除

      //rename('1.txt','1.exe');/ /刪除

      rmdir('C')//刪除空目錄 ?>

      3、什么是文件系統(tǒng)

      就是對系統(tǒng)或者服務(wù)器中的文件進(jìn)行操作,增刪改查,文件的上傳和下載

      4、文件系統(tǒng)能做什么?

      a)文件緩存的應(yīng)用 b)配置文件的應(yīng)用

      c)FTP站點(diǎn)主要是FTP下載站 d)站點(diǎn)頁面的靜態(tài)化 e)文件的上傳和下載。

      5、文件下載:查找 header

      header('content-type:image/gif');//告訴瀏覽器你的文件描述

      header('Content-Disposition: attachment;filename=”baidu.gif"');//告訴瀏覽器文件的大小

      header('content-length'.filesize('baidu.gif'));//顯示內(nèi)容

      readfile('baidu.gif');?>

      三、個(gè)人收獲

      學(xué)習(xí)PHP的過程做一下概括:

      (1)熟悉HTML/CSS/JS等網(wǎng)頁基本元素,完成階段可自行制作完整的網(wǎng)頁,對元素屬性達(dá)到熟悉程度

      (2)理解動態(tài)語言的概念,運(yùn)做機(jī)制,熟悉PHP語法

      (3)學(xué)習(xí)如何將PHP與HTML結(jié)合起來完成簡單動態(tài)頁面

      (4)接觸MYSQL,開始設(shè)計(jì)數(shù)據(jù)庫程序

      (5)不斷鞏固,摸透大部分PHP常用函數(shù),并可理解OOP,MYSQL優(yōu)化,以及模板

      (6)完成一個(gè)功能齊全的動態(tài)站點(diǎn)

      通過這段時(shí)間的學(xué)習(xí),自己受益匪淺,知道了很多關(guān)于PHP的東西,學(xué)會了很多內(nèi)容。在這堂課的學(xué)習(xí)過程中我認(rèn)真聽講,上機(jī)認(rèn)真練習(xí),遇到難題,自己思考與探索,不斷地尋求進(jìn)步,請教老師和同學(xué),雖然上半年沒有學(xué)習(xí)這門課程,不過老師講課非常仔細(xì),然后同學(xué)們一步步自己跟著老師做,還是能跟得上,等著以后自己做畢業(yè)設(shè)計(jì)也有一定的幫助。

      第二篇:PHP課程總結(jié)

      PHP課程總結(jié)

      這個(gè)學(xué)期開設(shè)的PHP課程是由聶老師上的,老師很詳細(xì)的跟我們介紹PHP的語法,然后用實(shí)例跟我們講解,每節(jié)課老師都盡心盡責(zé),可是無奈班上的人聽的還是寥寥無幾,真正掌握的可能也只有雷sir和老胡,不知道是什么原因,但我始終覺得學(xué)習(xí)是自己的事情,如果不聽,那可能是真的有自己的想法,就像您說的,能救咱就救救不了咱們也沒有辦法!

      讓我們掌握知識最多的時(shí)候應(yīng)該是做網(wǎng)頁的時(shí)候,在寫網(wǎng)頁代碼的時(shí)候,才是我們真正將實(shí)際只是運(yùn)用在實(shí)踐中的時(shí)候,雖然網(wǎng)頁制作的知識是我們上個(gè)學(xué)期學(xué)的知識,但是,真正的運(yùn)用和熟悉起來卻是這個(gè)時(shí)候,同樣,老師教了很多東西給我們,可是我們卻并沒有將他們運(yùn)用起來,或許說,不知道該在哪里運(yùn)用起來,我們平常的實(shí)踐非常的有限,沒有建站的機(jī)會,更沒有建站的經(jīng)歷,所以我們基本上學(xué)了就忘記了,沒有實(shí)踐,學(xué)了就忘,慢慢的就進(jìn)入了惡性循環(huán),就覺得學(xué)了也不知道該干嘛,所以慢慢自己開始懈怠。慢慢的也就覺得沒有什么意思了。

      到后半程的課程老師也覺得沒意思了,然后開始讓我們自由活動,只要不打游戲,就行了,其實(shí)這也是好事,都是成年人了,都知道對自己負(fù)責(zé),沒有了聽課的任務(wù)后,也好把時(shí)間更好的用在自己的事情上,讓自己更高效的做自己的事情由何嘗不可呢。在后半段的課程我基本上就在做自己的事情了,對PHP也沒有花太多的精力。硬要說總結(jié)的話,我只能說,學(xué)習(xí)PHP首先要熟悉HTML/CSS/JS等網(wǎng)頁基本元素,完成階段可自行制作完整的網(wǎng)頁,對元素屬性達(dá)到熟悉程度;然后理解動態(tài)語言的概念,運(yùn)做機(jī)制,熟悉PHP語法;學(xué)習(xí)如何將PHP與HTML結(jié)合起來完成簡單動態(tài)頁面;再接觸MYSQL,開始設(shè)計(jì)數(shù)據(jù)庫程序;不斷鞏固,摸透大部分PHP常用函數(shù),并可理解OOP,MYSQL優(yōu)化,以及模板;最后完成一個(gè)功能齊全的動態(tài)站點(diǎn)。

      對于我們這樣的PHP新手學(xué)習(xí)PHP基礎(chǔ)知識時(shí)只要大致了解了就行,不要徹底的弄明白PHP基礎(chǔ)知識。那要到什么時(shí)候去深究PHP基礎(chǔ)知識呢?等我們?nèi)腴T后。也就是我們會使用PHP開發(fā)一個(gè)完整的網(wǎng)站后。你就會發(fā)現(xiàn)前面的PHP基礎(chǔ)知識哪些是在我們的項(xiàng)目中非常重要的,哪些又不是那么經(jīng)常用的。這個(gè)時(shí)候你多完成幾個(gè)完整的項(xiàng)目,這時(shí)你對PHP基礎(chǔ)知識的了解會更加清晰。

      第三篇:《PHP應(yīng)用程序技術(shù)》課程教學(xué)大綱

      四川水利職業(yè)技術(shù)學(xué)院信息工程系

      課程教學(xué)大綱

      《PHP應(yīng)用程序技術(shù)》教學(xué)大綱

      一、課程目的

      通過本課程的學(xué)習(xí),課堂上先結(jié)合案例講解PHP的基本語法等知識,再通過上機(jī)實(shí)踐和課后練習(xí),進(jìn)行實(shí)際案例的開發(fā)。使學(xué)生能夠更加全面地理解PHP語言的語法結(jié)構(gòu)和運(yùn)行原理,并能熟練地運(yùn)用PHP和MySQL等知識進(jìn)行項(xiàng)目開發(fā)。

      二、課程性質(zhì)和任務(wù)

      本課程屬于計(jì)算機(jī)軟件開發(fā)專業(yè)的一門計(jì)算機(jī)編程語言基礎(chǔ)課程,主要學(xué)習(xí)PHP程序設(shè)計(jì)語言的知識和應(yīng)用,具體包括PHP概述、HTML基礎(chǔ)、PHP語法基礎(chǔ)、流程控制結(jié)構(gòu)、PHP數(shù)組、PHP網(wǎng)站開發(fā)、MySQL數(shù)據(jù)庫技術(shù)和PHP、MySQL數(shù)據(jù)庫編程技術(shù)、面向?qū)ο蠹夹g(shù)、PHP安全與加密技術(shù)和B2C電子商務(wù)網(wǎng)站開發(fā)等。

      三、教學(xué)要求

      通過本課程學(xué)習(xí),力求讓學(xué)生掌握PHP編程方法,同時(shí)由于PHP語言可運(yùn)行在跨平臺操作系統(tǒng)上,在當(dāng)前網(wǎng)絡(luò)開發(fā)應(yīng)用中非常廣泛,是學(xué)生進(jìn)行網(wǎng)站建設(shè)、Web應(yīng)用開發(fā)非常重要的工具。

      四、教學(xué)內(nèi)容和課時(shí)安排

      第1章 PHP開發(fā)環(huán)境搭建(10學(xué)時(shí))1.PHP功能簡介 2.程序運(yùn)行環(huán)境的搭建 3.安裝Apache與PHP 4.Apache的啟動與關(guān)閉、Apache的配置文件 5.PHP的配置文件

      6.幾種綜合網(wǎng)絡(luò)服務(wù)器系統(tǒng)的 7.幾種開發(fā)工具簡介

      第2章 PHP基礎(chǔ)語法(12學(xué)時(shí))1.語言構(gòu)成與工作原理

      2.常量與變量 3.運(yùn)算符和關(guān)鍵字 4.流程控制語法 5.表達(dá)式 6.特殊的全局變量 7.文件包含 四川水利職業(yè)技術(shù)學(xué)院信息工程系

      課程教學(xué)大綱

      8.PHP的數(shù)據(jù)類型 9.數(shù)據(jù)類型間的轉(zhuǎn)換 10.函數(shù)的定義與使用 11.PHP常用函數(shù)第

      3章 PHP中類的應(yīng)用(10學(xué)時(shí))1.PHP中面向?qū)ο蟪绦蛟O(shè)計(jì)的 應(yīng)用 2.定義屬性和方法 3.類的引用、擴(kuò)展與繼承 4.類的使用 5.接口與抽象類

      第4章 文件系統(tǒng)與文本數(shù)據(jù)(8學(xué)時(shí))1.PHP中的目錄操作 2.PHP中的文件操作 3.文件的上傳與下載 4.字符類型的特殊性 5.字符的顯示與格式化 6.常見字符串的操作 7.正則表達(dá)式 8.字符操作的注意事項(xiàng)

      第5章 數(shù)組操作與數(shù)據(jù)結(jié)構(gòu)(10學(xué)時(shí))1.一維數(shù)組與多維數(shù)組 2.常用的數(shù)組操作 3.數(shù)組索引與鍵名的操作 4.數(shù)組的排序

      第6章 錯(cuò)誤與異常(8學(xué)時(shí))1.PHP中常見錯(cuò)誤類型 2.PHP程序調(diào)試策略 3.使用PHPEclipse進(jìn)行PHP 4.錯(cuò)誤的處理 5.異常處理的原理 6.擴(kuò)展的異常處理類 四川水利職業(yè)技術(shù)學(xué)院信息工程系

      課程教學(xué)大綱

      第7章 PHP與表單(12學(xué)時(shí))1.HTML表單簡介 2.表單數(shù)據(jù)的接收

      3.常用表單數(shù)據(jù)的驗(yàn)證方法 4.URL編碼解碼函數(shù) 5.JavaScript程序設(shè)計(jì)基礎(chǔ) 6.PHP動態(tài)生成JavaScript 7.JavaScript中調(diào)用PHP程序 8.JavaScript和PHP綜合實(shí)例

      第8章 PHP與MySQL數(shù)據(jù)庫編程技術(shù) 1.MySQL數(shù)據(jù)庫安裝與配置 2.如何創(chuàng)建一個(gè)數(shù)據(jù)庫與表 3.數(shù)據(jù)的操作

      4.使用PHP操作MySQL數(shù)據(jù)庫 5.使用PHP獲取MySQL數(shù)據(jù)庫的信息 第9章 B2C電子商務(wù)網(wǎng)站開發(fā)實(shí)訓(xùn) 1.需求分析 2.系統(tǒng)設(shè)計(jì) 3.數(shù)據(jù)庫設(shè)計(jì) 4.系統(tǒng)實(shí)現(xiàn) 5.網(wǎng)站后臺開發(fā) 6.網(wǎng)站前臺開發(fā) 7.會員中心模塊開發(fā)

      五、考核方式

      本課程考核采用綜合考核方式,即課程的考試成績由平時(shí)成績、實(shí)驗(yàn)成績和期末的理論考核成績組成。其中平時(shí)成績強(qiáng)調(diào)平時(shí)的出勤、課堂紀(jì)律、課堂表現(xiàn)和作業(yè),占總成績的10%;設(shè)計(jì)、實(shí)驗(yàn)成績占總成績的30%;期末的理論考核采取開卷方式,占總成績的60%。

      六、參考教材

      《PHP程序設(shè)計(jì)案例教程》 陳建國編著 機(jī)械工業(yè)出版社 《PHP從入門到精通》 明日科技編著 清華大學(xué)出版社

      七、其它(說明)四川水利職業(yè)技術(shù)學(xué)院信息工程系

      課程教學(xué)大綱

      教學(xué)大綱僅供老師作為授課安排的參考,具體情況應(yīng)由老師根據(jù)學(xué)校條件、學(xué)生狀況而定。

      第四篇:PHP基礎(chǔ)總結(jié)

      1、在HTML嵌入PHP腳本有三種辦法:

      <scriptlanguage=“php”>

      //嵌入方式一

      echo(“test”);

      </script>

      <?

      //嵌入方式二

      echo“<br>test2”;

      ?>

      <?php

      //嵌入方式三

      echo“<br>test3”;

      ?>

      還有一種嵌入方式,即使用和Asp相同的標(biāo)記<%%>,但要修改PHP.ini 相關(guān)配置,不推薦使用。

      2、PHP注釋分單行和多行注釋,和java注釋方式相同。

      <?

      //這里是單行注釋

      echo“test”;

      /*

      這里是多行注釋!可以寫很多行注釋內(nèi)容

      */

      ?>

      注意不要有嵌套注釋,如/*aaaa/*asdfa*/asdfasdfas*/,這樣的注釋會出現(xiàn)問題。

      3、PHP主要的數(shù)據(jù)類型有5種,integer,double,string,array,object。

      4、函數(shù)內(nèi)調(diào)用函數(shù)外部變量,需要先用global進(jìn)行聲明,否則無法訪問,這是PHP與其他程序語言的一個(gè)區(qū)別。事例代碼:

      <?

      $a=1;

      functiontest(){

      echo$a;

      }

      test();//這里將不能輸出結(jié)果“1”。

      functiontest2(){

      global$a;

      echo$a;

      }

      test2();//這樣可以輸出結(jié)果“1”。

      ?>

      注意:PHP可以在函數(shù)內(nèi)部聲明靜態(tài)變量。用途同C語言中。

      5、變量的變量,變量的函數(shù)

      <?

      //變量的變量

      $a=“hello”;

      $$a=“world”;

      echo“$a$hello”;//將輸出“helloworld”

      echo“$a${$a}”;//同樣將輸出“helloworld”

      ?>

      <?

      //變量的函數(shù)

      functionfunc_1(){

      print(“test”);

      }

      functionfun($callback){

      $callback();

      }

      fun(“func_1”);//這樣將輸出“test”

      ?>

      6、PHP同時(shí)支持標(biāo)量數(shù)組和關(guān)聯(lián)數(shù)組,可以使用list()和array()來創(chuàng)建數(shù)組,數(shù)組下標(biāo)從0開始。如:

      <?

      $a[0]=“abc”;

      $a[1]=“def”;

      $b[“foo”]=13;

      $a[]=“hello”;//$a[2]=“hello”

      $a[]=“world”;//$a[3]=“world”

      $name[]=“jill”;//$name[0]=“jill”

      $name[]=“jack”;//$name[1]=“jack”

      ?>

      7、關(guān)聯(lián)參數(shù)傳遞(&的使用),兩種方法。例:

      <?

      //方法一:

      functionfoo(&$bar){

      $bar.=“andsomethingextra”;

      }

      $str=“ThisisaString,”;

      foo($str);

      echo$str;//output:ThisisaString,andsomethingextra

      echo“<br>”;

      //方法二:

      functionfoo1($bar){

      $bar.=“andsomethingextra”;

      }

      $str=“ThisisaString,”;

      foo1($str);

      echo$str;//output:ThisisaString,echo“<br>”;

      foo1(&$str);

      echo$str;//output:ThisisaString,andsomethingextra

      ?>

      8、函數(shù)默認(rèn)值。PHP中函數(shù)支持設(shè)定默認(rèn)值,與C++風(fēng)格相同。

      <?

      functionmakecoffee($type=“coffee”){

      echo“makingacupof$type.n”;

      }

      echomakecoffee();//“makingacupofcoffee”

      echomakecoffee(“espresso”);//“makingacupofespresso”

      /*

      注意:當(dāng)使用參數(shù)默認(rèn)值時(shí)所有有默認(rèn)值的參數(shù)應(yīng)該在無默認(rèn)值的參數(shù)的后邊定義。否則,程序?qū)⒉粫凑账氲墓ぷ鳌?/p>

      */

      functiontest($type=“test”,$ff){//錯(cuò)誤示例

      return$type.$ff;

      }

      9、PHP的幾個(gè)特殊符號意義。

      $變量

      &變量的地址(加在變量前)

      @不顯示錯(cuò)誤信息(加在變量前)

      ->類的方法或者屬性

      =>數(shù)組的元素值

      ?:三元運(yùn)算子

      10、include()語句與require()語句

      如果要根據(jù)條件或循環(huán)包含文件,需要使用include()。

      require()語句只是被簡單的包含一次,任何的條件語句或循環(huán)等對其無效。

      由于include()是一個(gè)特殊的語句結(jié)構(gòu),因此若語句在一個(gè)語句塊中,則必須把他包含在一個(gè)語句塊中。

      <?

      //下面為錯(cuò)誤語句

      if($condition)

      include($file);

      else

      include($other);

      //下面為正確語句

      if($condition){

      include($file);

      }else

      {

      include($other);

      }

      ?>

      第五篇:php學(xué)習(xí)總結(jié)

      調(diào)試/*………*/ //…….#..........插入時(shí)考慮清楚字段類型避免插入后出現(xiàn)缺值,亂碼

      @ 屏蔽錯(cuò)誤or die 條件顯示

      以前學(xué)習(xí)php類的總結(jié):

      1.php中不能重載,但是能用子類覆蓋父類的方法名稱來實(shí)現(xiàn)新的重載

      1.1 在子類中調(diào)用父類的覆蓋部分可以使用 父類名稱::方法名稱();

      2.final 只能定義類和方法,不能使用final定義成員屬性,因?yàn)閒inal是常量的意思,在php里定義常量使用的是define函數(shù)

      2.1 final關(guān)鍵字標(biāo)記的類不能被繼承

      2.2 final關(guān)鍵字標(biāo)記的方法不能被子類重寫

      3.const是一個(gè)定義常量的關(guān)鍵字,在php中定義常量使用的是define()函數(shù),但是在類里定義常量使用的是“const” 這個(gè)關(guān)鍵字

      3.1在程序中不能修改它的值。

      3.2 訪問const 修飾的成員屬性要使用類名,在本類的方法里使用“self”關(guān)鍵字,但不使用“$”符號,也不能使用對象來訪問。

      4.static關(guān)鍵字可以描述類中的成員屬性和成員方法

      4.1 static 的成員屬于類,而不屬于任何對象,4.2 static的成員是在類第一次被加載的時(shí)候分配的空間,其他類無法訪問的,只對類的實(shí)例共享,能一定程度對類該成員形成保護(hù)

      4.3 靜態(tài)成員放到了“初始化靜態(tài)段”,在類第一次加載的時(shí)候放入的,可以讓堆內(nèi)存里的每個(gè)對象共享。所以在靜態(tài)方法里,可以使用這個(gè)方法所在的類的“類名”,也可以使用“self”來訪問其他靜態(tài)成員?!皊elf”代表這個(gè)靜態(tài)方法所在的類。

      4.3.1 在類里的靜態(tài)方法是不能訪問類的非靜態(tài)成員的。

      4.3.2 在類的非靜態(tài)方法里可以訪問靜態(tài)成員:”self:成員屬性“;

      4.4類的靜態(tài)變量,非常類似全局變量,能夠被所有類的實(shí)例共享,類的靜態(tài)方法也是一樣,類似于全局函數(shù)。

      4.5 在類內(nèi)函數(shù)訪問靜態(tài)變量時(shí)前面加self::靜態(tài)函數(shù)

      4.6 靜態(tài)變量可以在類外直接訪問,訪問方法是類名::靜態(tài)變量

      4.7 靜態(tài)函數(shù)可以在類外直接訪問,訪問方式是類名::靜態(tài)函數(shù)

      4.8 在類內(nèi)靜態(tài)函數(shù)訪問另一個(gè)靜態(tài)函數(shù)時(shí)使用 類名::靜態(tài)函數(shù)名

      4.8.1 靜態(tài)函數(shù)在類內(nèi)訪問靜態(tài)變量時(shí),訪問方式是類名::靜態(tài)變量

      4.8.2 靜態(tài)函數(shù)在類內(nèi)訪問靜態(tài)變量時(shí),訪問方式除了是類名::靜態(tài)變量外,還可以使用self::靜態(tài)變量

      4.9 在類內(nèi)靜態(tài)函數(shù)訪問另一個(gè)靜態(tài)函數(shù)時(shí)除了使用 類名::靜態(tài)函數(shù)名外,還可以使用self::靜態(tài)函數(shù)名,也可以直接調(diào)用靜態(tài)函數(shù)

      4.10 靜態(tài)函數(shù)內(nèi)不能訪問非靜態(tài)變量

      4.11 在類內(nèi)靜態(tài)函數(shù)不能使用$this->非靜態(tài)函數(shù)名訪問非靜態(tài)函數(shù),可以使用self::非靜態(tài)函數(shù)名

      4.12

      5.類里的”$this“,在php里面提供了一個(gè)本對象的引用$this,每個(gè)對象里面都有一個(gè)對象的引用$this來代表這個(gè)對象,完成對象內(nèi)部成員的調(diào)用。

      5.1 $this 就是對象內(nèi)部代表這個(gè)對象的引用。

      6.類里“self”,self 和$this相似,只不過self是代表這個(gè)靜態(tài)方法所在的類,所以在靜態(tài)方法里,可以使用這個(gè)方法所在的類的”類名“,也可以使用“self”來訪問其他的靜態(tài)成員,通常使用后者”self::成員屬性“。

      7.類里”__“開頭的函數(shù)名

      7.1類里”__“開頭的函數(shù)名都是在某一時(shí)刻不同情況下自動調(diào)用執(zhí)行的方法。

      7.2__toString()方法也是自動被調(diào)用,是直接輸出對象引用時(shí)自動調(diào)用的。比如“$p = new Person()”,直接用echo輸出$p會產(chǎn)生錯(cuò)誤,如果在類里定義了__toString()方法,再用echo直接輸出對象引用的時(shí)候就不會產(chǎn)生錯(cuò)誤了

      8.對象串行化

      8.1 __sleep()方法,在對象串行化的時(shí)候,會調(diào)用一個(gè)__sleep()方法來完成一些睡前的事情,__sleep()函數(shù)不接受任何參數(shù),但返回一個(gè)數(shù)組,其中包含需要串行化的屬性。未被包含的屬性降在串行化時(shí)被忽略,如果沒有__sleep()方法,php將保存所以屬性.8.2 __wakeup()方法,在重新醒來時(shí),即由二進(jìn)制串重新組成一個(gè)對象的時(shí)候,則會自動調(diào)用__wakeup(),做一些對象醒來就要做的動作。

      8.3 有時(shí)你可能需要一個(gè)對象在反串行化后立即執(zhí)行.為了這樣的目的,PHP會自動尋找__sleep和__wakeup方法.9.protected 成員能被同個(gè)類中的所有方法和繼承出的類的中所有方法訪問到,不能被父類的實(shí)例直接訪問。protected and public 可以動態(tài)綁定

      10.private 大部分private屬性仍然可以被外部代碼共享.解決方法是用一對public方法,一個(gè)是get(獲取屬性的值),另一個(gè)是set(設(shè)置屬性的值).10.1private 不可以動態(tài)綁定。Private成員只存在于它們所在的類內(nèi)部.不像public和protected成員那樣,PHP模擬靜態(tài)綁定.10.2 什么時(shí)候用到private?private成員只有當(dāng)你不想讓子類繼承改變或特殊化父類的行為時(shí)才用到,這種情況比你想像的要少,通常來說,一個(gè)好的對象分層結(jié)構(gòu)應(yīng)當(dāng)允許絕大多數(shù)功能被子類特殊化,改進(jìn),或改變—這是面向?qū)ο缶幊痰幕A(chǔ)之一。一定的情況下需要private方法或變量,例如當(dāng)你確信你不想允許子類改變父類中的某個(gè)特定的部份。

      11.抽象類:抽象方法是就像子類中一般的方法的占位符(占個(gè)地方但不起作用),它與一般方法不同—沒有任何代碼.如果類中存在一個(gè)或更多抽象方法, 那么這個(gè)類就成了抽象類.你不能實(shí)例化抽象類.你必須繼承它們,然后實(shí)例化子類.你也可以把抽象類看成是子類的一個(gè)模板.如果你覆寫所有的抽象方法, 子類就變成一個(gè)普通的類.如果沒有覆寫所有方法, 子類仍是抽象的.如果一個(gè)類中中包含有抽象方法(哪怕只有一個(gè)), 你必須聲明這個(gè)類是抽象的, 在class關(guān)鍵字前加上abstract.聲明抽象方法的語法與聲明一般方法不同.抽象方法的沒有像一般方法那樣包含在大括號{}中的主體部份,并用分號;來結(jié)束.12.接口:如果你建立了一個(gè)只有抽象方法的類,你就定義了一個(gè)接口(interface).為了說明這種情況, PHP中有interface 和implements關(guān)鍵字.你可以用interface來代替抽象類, 用implements來代替extends來說明你的類定義或使用一個(gè)接口.例如, 你可以寫一個(gè)myClass implements myIterface.這兩種方法可以依個(gè)人偏愛來選擇.12.1 如果接口中出現(xiàn)非抽象方法.會報(bào)錯(cuò)

      12.2 接口中的方法默認(rèn)是public 型的.其它類型的修飾符,不能修飾接口中的抽象方法.12.3 即使接口中所有的方法都是抽象方法,也不能使用 abstract 修飾.也不能用final

      12.4 即使接口中所有的方法都是抽象方法,在接口中,可以聲明靜態(tài)方法.12.5 在接口中可以有常量,e.g.:

      interfaceUser{

      const MAX_GRADE = 99;

      function getName();

      function setName($_name);

      }

      ?>

      13.Namespace關(guān)鍵字給一塊代碼命名.在這個(gè)代碼塊外部,腳本必須用操作符::加上命名空間的名稱來引用這個(gè)代碼塊.引用靜態(tài)的類成員也是用相同的方法.在命名空間內(nèi)代碼不需要聲明命名空間, 它本身就是默認(rèn)的.這種方法比添加前綴的方法好.你的代碼可由此變得更加緊湊和可讀.你可能想知道是否可以建立分層的(嵌套的)命名空間.答案是不可以.但你可以在命名空間名稱后加上冒號, 你可以再次調(diào)用在名稱中不包含冒號的變量,函數(shù)和類.命名空間允許存在冒號,只要不是第一個(gè)字符和最后一個(gè)字符或接著另一個(gè)冒號.命名空間的名稱中的冒號對于PHP來說沒有任何意義, 但如果你用他們來區(qū)分邏輯上的區(qū)塊, 他們可以很好地說明你的代碼中的父子(parent-child)關(guān)系.14.__toString()打印對象會調(diào)用它的__toString方法.15.不能實(shí)例化的類

      //

      //當(dāng)__construct()為public時(shí)可以實(shí)例化

      class A{

      private function __construct(){}

      }

      $a = new A();//fail

      ?>

      15.1

      //static的方法留給外部訪問.

      class A{

      private function __construct(){}

      static function getClassA(){

      return “這里是后門,可以通過這里進(jìn)入類內(nèi)部..”;

      }

      }

      echo A::getClassA();

      ?>

      15.2

      //不能用new實(shí)例化的類.

      //static的方法留給外部訪問.

      //在方法內(nèi)部返回實(shí)例.

      class A{

      private function __construct(){

      echo “this is construction
      n”;

      }

      static function getClassA(){

      $a = new A();

      return $a;

      }

      }

      // 看到這里確實(shí)返回的是 A 的實(shí)例.但不是同一個(gè)對象.$a1 = A::getClassA();

      $a2 = A::getClassA();

      echo “$a1 的類是 ”.get_class($a1).“ , $a2 是 ”.get_class($a1);if($a1 === $a2){

      echo “
      $a1 $a2 指向同一對象.”;

      }else{

      echo “
      $a1 $a2 不是一個(gè)對象.”;

      }

      //this is construction

      //this is construction

      //$a1 的類是 A , $a2 是 A

      //$a1 $a2 不是一個(gè)對象.?>

      15.3

      //不能用new實(shí)例化的類.
      //static的方法留給外部訪問.
      //在方法內(nèi)部返回實(shí)例.

      //定義靜態(tài)屬性保證這個(gè)實(shí)例能被靜態(tài)方法調(diào)用.

      //增加判斷部分.

      class A{

      private static $a = null;

      private function __construct(){}

      static function getClassA(){

      if(null == self::$a){

      self::$a = new A();

      }

      return self::$a;

      }

      }

      // 看到這里確實(shí)返回的是 A 的實(shí)例.但不是同一個(gè)對象.$a1 = A::getClassA();

      $a2 = A::getClassA();

      echo “$a1 的類是 ”.get_class($a1).“ , $a2 是 ”.get_class($a1);if($a1 === $a2){

      echo “
      $a1 $a2 指向同一對象.”;

      }else{

      echo “
      $a1 $a2 不是一個(gè)對象.”;

      }

      //$a1 的類是 A , $a2 是 A

      //$a1 $a2 指向同一對象.?>

      下載php課程總結(jié)word格式文檔
      下載php課程總結(jié).doc
      將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
      點(diǎn)此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報(bào),并提供相關(guān)證據(jù),工作人員會在5個(gè)工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

      相關(guān)范文推薦

        學(xué)php程序開發(fā)應(yīng)該如何選擇課程?

        004km.cn 學(xué)php程序開發(fā)應(yīng)該如何選擇課程? 中國每年有大量的計(jì)算機(jī)類畢業(yè)生進(jìn)入企業(yè),企業(yè)會把那些程序員列入優(yōu)秀人才加以重視呢?斬獲高薪的程序員需要哪些素質(zhì)呢? 測......

        PHP學(xué)習(xí)總結(jié)的一些經(jīng)驗(yàn)

        其實(shí)我也是一樣很新的新手,上PHP100學(xué)習(xí)視頻并在論壇里學(xué)習(xí)其實(shí)也就是一個(gè)月前的事.雖然早在8月份花過一個(gè)星期看完w3school的PHP教 程,了解了許多PHP知識.但始終是缺乏一個(gè)......

        總結(jié)PHP xajax應(yīng)用方案

        一、 HelloWrold步驟 PHP代碼 //服務(wù)器端 require_once ("../../xajax.inc.php"); //定義處理函數(shù), //并在處理函數(shù)中實(shí)例xajaxResponse對象, //調(diào)用其方法控制控......

        PHP核心知識階段總結(jié)

        Require和require_once區(qū)別 Include和include_once與require和require_once行為是相類似的,因此只說一類就可以了 區(qū)別只是報(bào)錯(cuò)級別的不同。 加上once代表包含文件只被包含......

        PHP網(wǎng)站漏洞的相關(guān)總結(jié)

        PHP網(wǎng)站漏洞的相關(guān)總結(jié) NB聯(lián)盟-zwell 從現(xiàn)在的網(wǎng)絡(luò)安全來看,大家最關(guān)注和接觸最多的WEB頁面漏洞應(yīng)該是ASP了,在這方面,小竹是專家,我沒發(fā)言權(quán).然而在PHP方面來看,也同樣存......

        PHP基礎(chǔ)階段知識總結(jié)[大全]

        php基礎(chǔ)階段內(nèi)容: 1 php 基本概念,常規(guī)語法 什么是php 一種服務(wù)器端的 HTML 腳本/編程語言,是一種簡單的、面向?qū)ο蟮?、解釋型的、健壯的、安全的、性能非常之高的、?dú)立于......

        php 試題總結(jié)(附參考答案)

        php 試題總結(jié)(附參考答案) 1 JavaScript腳本語言的前身是B A.Basic B.Live Script C.Oak D.VBScript 2使用CSS對文本進(jìn)行修飾,若使文本閃爍,text-decoration的取值為D A.n......

        php mysql學(xué)習(xí)總結(jié)剖析

        php 字符串 反引號里面的字符必須是命令 如`pwd` 是查看當(dāng)前目錄 轉(zhuǎn)移字符: 符號 含義” 雙引號 反斜線n 換行 t 跳位(Tab) 常量和變量 _FILE_ 這個(gè)默認(rèn)常量是php程......