溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

php面向?qū)ο髮?shí)現(xiàn)輸出部門信息

發(fā)布時(shí)間:2020-06-02 13:59:43 來源:億速云 閱讀:154 作者:Leah 欄目:編程語言

這篇文章給大家分享的是php面向?qū)ο髮?shí)現(xiàn)輸出部門信息,相信大部分人都還沒學(xué)會(huì)這個(gè)技能,為了讓大家學(xué)會(huì),給大家總結(jié)了以下內(nèi)容,話不多說,一起往下看吧。

一、   面向?qū)ο蟮膶?shí)現(xiàn)效果為:

php面向?qū)ο髮?shí)現(xiàn)輸出部門信息

要求:

其中必須要使用的知識(shí)點(diǎn):

1.     類的定義

2.     類的實(shí)例化

3.     對(duì)象的引用賦值=&

4.     析構(gòu)函數(shù)

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

這個(gè)案例要實(shí)現(xiàn)的效果其實(shí)算很簡(jiǎn)單,但是重點(diǎn)是,你的思路很清楚嗎?你的思路是否具備一定的條理性,或者說做了許多項(xiàng)目,你有沒有總結(jié)出一套你自己的系統(tǒng)性的思路方案呢?我的總結(jié)如下:

3個(gè)分析:

1、流程分析

2、具體的實(shí)現(xiàn)分析

3、 數(shù)據(jù)庫分析

3個(gè)執(zhí)行:

1.創(chuàng)建數(shù)據(jù)庫,初始化數(shù)據(jù)庫數(shù)據(jù)(  項(xiàng)目的啟動(dòng)數(shù)據(jù) )

2.創(chuàng)建類,實(shí)現(xiàn)類

3.寫流程

接下來我們一個(gè)一個(gè)的分析

1、流程分析

1、獲取所有部門信息

2、獲取單個(gè)部門信息

3、寫一個(gè)對(duì)象引用賦值=&的測(cè)試

例如$jordon1=&$jordon

4、在所有邏輯最后寫一句話:應(yīng)用程序到此為止

5、執(zhí)行了一個(gè)類的析構(gòu)函數(shù)

2、具體的實(shí)現(xiàn)分析

1、第一步:識(shí)別對(duì)象(找名詞)

根據(jù)上面的流程我們得出的對(duì)象只有一個(gè):

1.部門

2、第二步:識(shí)別對(duì)象的屬性( 數(shù)據(jù)名詞+結(jié)合現(xiàn)實(shí)世界去分析+結(jié)合具體的場(chǎng)景 )

1.部門:屬性有:id,名稱

3、第三步:識(shí)別對(duì)象的方法( 動(dòng)詞+結(jié)合現(xiàn)實(shí)世界去分析+結(jié)合具體的場(chǎng)景 )

1.部門   方法有

1.獲取所有部門信息

2.獲取單個(gè)部門信息

因?yàn)樗械臄?shù)據(jù)都要保存到數(shù)據(jù)庫,所有的數(shù)據(jù)都要從數(shù)據(jù)庫獲取,所以接下來

數(shù)據(jù)庫分析:

表:(有多少個(gè)對(duì)象 至少就有多少個(gè)表)

1.部門    字段 = 對(duì)象的屬性

分析完成后,我們接下來做具體的操作

1、創(chuàng)建數(shù)據(jù)庫,初始化數(shù)據(jù)庫數(shù)據(jù)(  項(xiàng)目的啟動(dòng)數(shù)據(jù) )

創(chuàng)建數(shù)據(jù)庫,名字我們就叫做depart

php面向?qū)ο髮?shí)現(xiàn)輸出部門信息

為數(shù)據(jù)庫創(chuàng)建表,表明就做叫部門表

php面向?qū)ο髮?shí)現(xiàn)輸出部門信息

分析是否有初始化數(shù)據(jù),(我們可以稱之為項(xiàng)目的啟動(dòng)數(shù)據(jù),沒有這些數(shù)據(jù),項(xiàng)目無法啟動(dòng),)然后將這些初始化數(shù)據(jù)寫入數(shù)據(jù)庫

綜上分析,初始化數(shù)據(jù)就是3個(gè)部門

所以接下來我們初始化數(shù)據(jù)庫

php面向?qū)ο髮?shí)現(xiàn)輸出部門信息

2.創(chuàng)建類,實(shí)現(xiàn)類

創(chuàng)建部門類:

為了方便管理,我們把所有的類放到model文件夾中,然后這個(gè)類文件我們就叫做Depart.class.php,然后我們把上面分析得出來的類的屬性和方法,寫入部門類中

model/Depart.class.php

<?php
//部門類
class Depart{
    //定義屬性 id,名稱
    public $id = "";
    public $name = "";
    public $conn = "";//數(shù)據(jù)庫連接
    public $tableName = "depart";//表名
    //構(gòu)造函數(shù)
    public function __construct( $id,$name ){
        //初始化屬性
        $this->id = $id;
        $this->name = $name;
        //初始化行為 初始化方法
        $this->initConn();
    }
    //析構(gòu)函數(shù) 銷毀數(shù)據(jù)庫連接
    public function __destruct(){
        //銷毀連接
        if( $this->conn ){
            mysqli_close( $this->conn );
            echo "銷毀了連接<br/>";
        }
    }
    
    //定義方法
    //創(chuàng)建公共的方法 獲取數(shù)據(jù)庫連接
    public function initConn(){
        $config = Array(
            "hostname"=>"127.0.0.1",
            "database"=>"depart",
            "username"=>"root",
            "password"=>"root"
        );
        $this->conn = mysqli_connect( $config['hostname'],$config['username'] ,$config['password'],
                $config['database']);
    }
    // 1.獲取所有部門信息
    public function getAll(){
        //創(chuàng)建數(shù)據(jù)庫連接
        $conn = $this->conn;
        //寫sql
        $sql = " select * from ".$this->tableName;
        //執(zhí)行sql
        $result = mysqli_query( $conn,$sql );
        //獲取數(shù)據(jù)
        // mysqli_fetch_all($result)//特點(diǎn):不會(huì)包含字段名
        $list = Array();
        while( $row = mysqli_fetch_assoc(  $result ) ){
            $list[] = $row;
        }
        //返回?cái)?shù)據(jù)
        return $list;
    }
    // 2.獲取單個(gè)部門信息
    public function getOne( $id ){
        //創(chuàng)建數(shù)據(jù)庫連接
        $conn = $this->conn;
        //寫sql
        $sql = " select * from ".$this->tableName." where id= ".$id; 
        //執(zhí)行sql
        $result = mysqli_query( $conn,$sql );
        //獲取數(shù)據(jù)
        // mysqli_fetch_all($result)//特點(diǎn):不會(huì)包含字段名
        $list = Array();
        while( $row = mysqli_fetch_assoc(  $result ) ){
            $list[] = $row;
        }
        //返回?cái)?shù)據(jù)
        return $list;
    }
}
?>

3.寫流程

接下來,我們根據(jù)流程分析的結(jié)果來寫具體的流程,流程代碼如下:

<?php
//引入類文件
require_once "model/Depart.class.php";

//寫流程
// 1.獲取所有部門信息
//
$humanResourseDepartment = new Depart(2,"行政部門");
//通過對(duì)象調(diào)用方法  
$alllist = $humanResourseDepartment->getAll();


echo "<b>所有部門信息為:</b><br/>";
print_r( $alllist );
echo "<br/>";
// 2.獲取單個(gè)部門信息 = 開發(fā)部門
$devDepartment = $humanResourseDepartment ->getOne( 1 );
echo "<b>開發(fā)部門信息:</b>  <br/>";
print_r( $devDepartment );
echo "<br/>";
// 3.對(duì)象引用賦值=&的測(cè)試
//      $jordon1=&$jordon
$humanResourseDepartment1 =& $humanResourseDepartment;
echo "修改前:行政部門的名字為:".$humanResourseDepartment->name."<br/>";
//修改
$humanResourseDepartment1->name = "人力部門";
echo "修改后:行政部門的名字為:".$humanResourseDepartment->name."<br/>";
// 4.在所有邏輯最后寫一句話:應(yīng)用程序到此為止
echo "<b>應(yīng)用程序到此為止</b>  <br/>";

// 5.執(zhí)行了一個(gè)類的析構(gòu)函數(shù)
?>

運(yùn)行結(jié)果如下:

所有部門信息為:
Array ( [0] => Array ( [id] => 1 [name] => 開發(fā)部門 ) [1] => Array ( [id] => 2 [name] => 行政部門 ) [2] => Array ( [id] => 3 [name] => 后勤部門 ) )
開發(fā)部門信息:
Array ( [0] => Array ( [id] => 1 [name] => 開發(fā)部門 ) )
修改前:行政部門的名字為:行政部門
修改后:行政部門的名字為:人力部門
應(yīng)用程序到此為止
銷毀了連接


看完這篇文章,你們學(xué)會(huì)php面向?qū)ο髮?shí)現(xiàn)輸出部門信息2的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI