5-лаборатория иши
Мавзу: PHP синфларни яратиш.
16.1. Ишнинг мақсади ва мазмуни.
Ушбу тажриба ишининг асосий мақсади, Вариант бўйича яратилган саҳифанинг сервер томонини дастурлашда PHP синфларидан фойдаланиш кўникмасини ҳосил қилиш ҳисобланади.
РНР синфлар
Объектга йўналтирилган дастурлашнинг асосий тушунчалари – синфлар ҳамда объектлардир. Бу тушунчаларни қуйидагича тушуниш мумкин: объект – бу дастурда қўлланиладиган тушунча ёки бирор физик предмет ҳақида маълумот берадиган структураланган ўзгарувчидир, синфлар эса бу объектларнинг тавсифи ва улар устида бажариладиган ҳаракатлардир.
PHP дастурлаш тилида синфлар қуйидаги синтаксис ёрдамида аниқланади:
class Синф_номи{
var $хусусият_номи;
/* хусусиятлар рўйхати */
function метод_номи( ){
/* усулларнинг танаси */
}
/*усуллар рўйхати*/
}
Синф объектлари хусусиятлари номи var калит сўзи ёрдамида эълон қилинади, берилган синф объектларига қўлланилган усуллар функция сифатида ишлатилади. Синф танаси ичида this калит сўзи ёрдамида тақдим қилинаётган жорий синфга мурожаатни амалга ошириш мумкин.
Масалан, биз мақола категориясини тасвирловчи синф тузишимиз керак. Ҳар бир мақоланинг номи, муаллифи ва қисқа мазмуни каби хусусиятлари бор. Биз мақола билан қандай амал бажармоқчимиз? Биз санаб ўтилган хусусиятларга маъно беришимиз, мақолани браузерда кўрсатишимиз керак бўлади. Шунда бу синфнинг ифодаланиши қуйидагича ҳолатда бўлади:
class Articles { // Мақола синфини тузамиз
var $title;
var $author;
var $description;
// мақола атрибути маъносини ўзлаштирувчи усул
function make_article($t, $a, $d){
$this->title = $t;
$this->author = $a;
$this->description = $d;
}
//синф нусхасини ифодалаш учун усул
function show_article(){
$art = $this->title . "
" .
$this->description .
"
Муаллиф: " . $this->author;
echo $art;
} } ?>
Шундай қилиб “мақола” туридаги физик объектларни тасвирлаш учун биз уч ўзгартувчидан ташкил топган, мақола характеристикасини ўзида жамлаган Articles номли синф ва муайян мақола тузиш ва уни тасвирлаш учун иккита функция туздик.
Маълумки, PHP билан ишлаш даврий ҳолатда HTML режимида юкланиши мумкин. Бу ҳолда дастур бир неча коднинг бўлаклари(блоклар)дан ташкил топади. Синфни ифодалаш php-коднинг ҳар хил блоклари бўйича ва қолаверса ҳар хил файллар бўйича тарқатилмаслиги керак. Яъни қуйидагича ёзсак:
class Articles { // Синфни тасвирлашнинг боши
var $title;
?>
function show_article(){ // усулнинг таркиби
}
} // синфни тасвирлашнинг якуни
?>
бунда дастур тартибли ишлайди.
Синф номи масаласида айрим нарсаларни эътиборда тутиш керак. Синфнинг номи PHP тилидаги объектлар номланиши қоидаларига жавоб бериши лозим, лекин бир қатор номлар борки, техник мутахассислар томонидан ўз мақсади учун захира қилинади. Биринчи навбатда бу номлар “_” қуйи чизиқдан бошланувчилардир. Синфлар ва функциялар тузиш учун бу каби номларни ишлатмаслик керак. Бундан ташқари stdClass номи захира қилинган, зеро у PHP сурилгичи ичида ишлатилади.
Do'stlaringiz bilan baham: |