Lập trình h−ớng đối t−ợng (OOP) 1 Định nghĩa lớp

Một phần của tài liệu lập trình php va mysql ppsx (Trang 30 - 33)

Chúng ta có thể định nghĩa lớp bằng toán tử class, và trong mỗi một lớp chúng ta sẽ xây dụng các ph−ơng thức và thuộc tính cho lớp đó .

Giả sử muốn định nghĩa lớp “Sesssion” chúng ta làm nh− sau : <?php

class Session {

// Định nghĩa các thuộc tính và ph−ơng thức // Xây dựng các ph−ơng thức cho lớp

} // Kết thúc một lớp ?>

Để định nghĩa thuộc tính cho lớp chúng ta đặt từ khoá var tr−ớc thuộc tính đó.

<?

class Session

{

var $sqlhost = “localhost”; var $sqluser = “root”; var $sqlpass = “password”; var $sqldb = “session”;

var $linkid; var $seshid; var $sessdata; var $userid; var $error_no; var $err; ...

// Định nghĩa các ph−ơng thức ở đây } //Kết thúc định nghĩa lớp

?>

Tiếp theo chúng ta sẽ định nghĩa các ph−ơng thức cho lớp trên.

Ph−ơng thức cần xây dựng đầu tiên là Session() sau đó đến các ph−ơng thức khác. <? // Định nghĩa lớp Session class Session { // Định nghĩa các thuộc tính .. . // Định nghĩa các ph−ơng thức

function Session($localSeshID, $localUserID=0) {

$this->seshid = $localSeshID; $this->userid = $localUserID; // Kết nối tới MySQL

$this->linkid=mysql_connect($this->sqlhost, $this->sqluser, $this- >sqlpass);

if (!$this->linkid) { $this->err=mysql_error(); $this->error_no=102; } } ... // Định nghĩa các ph−ơng thức khác } ?> 2. Sử dụng lớp đã đ−ợc định nghĩa.

Để khai báo một đối t−ợng có kiểu thuộc lớp đã xây dựng ta dùng toán tử new nh− sau :

<?php

require (“classes/sessions.php”); //include class $mysesh = new Session($seshid);

if ($mysesh->error_no) {

//Thông báo có lỗi }

$user = $mysesh->sessdata[userid]; ?>

<HTML> <HEAD>

<TITLE>Welcome to my website, <? echo $user ?></TITLE> </HEAD>

<BODY>

<FORM ACTION=”nextpage.php” METHOD=”POST”>

<input type=”hidden” name=”seshid” value=”<? print $seshid ?>”> </FORM>

</BODY> </HTML>

Một phần của tài liệu lập trình php va mysql ppsx (Trang 30 - 33)

Tải bản đầy đủ (PDF)

(115 trang)