Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Введение в СУБД HyTech.doc
Скачиваний:
11
Добавлен:
01.03.2025
Размер:
2.67 Mб
Скачать

Пример работы с сессиями

Пример:

<?php     session_start(); if( !isset( $_SESSION[ "NEW_SESS_FLAG" ] ) ) { /*   считаем, что новая сессия, поскольку переменная NEW_SESS_FLAG   не была инициализирована, а по ней мы хотим проверять   новая сессия или нет   при первом входе, хотим например, ввести имя пользователя и пароль   формируем страницу с формой ввода имени пользователя и пароля */   include "login.html";   session_register( "NEW_SESS_FLAG" );   // регистрируем переменную   // далее будем ждать имя пользователя и пароль   _SESSION["NEW_SESS_FLAG"] = 1; } else {   if(_SESSION[ "NEW_SESS_FLAG"] == 1 )   {     // вводили имя и пароль проверяем пароль и имя пользователя     include "autorize.php";          if( !$good_login )     {       // не те имя и пароль, либо нет параметров с именем и паролем       // говорим, что пароль не правильный       include "bad_passw.html";             // удаляем переменную, следующий запрос будет       // восприниматься нами как новая сессия       session_unregister( "NEW_SESS_FLAG" );     }     else     {       _SESSION[ "NEW_SESS_FLAG" ] = 2;     }   }   if(_SESSION[ "NEW_SESS_FLAG"] == 2 )   {     // работаем, понятно с каким пользователем     ;   } } ?>

6.4 Классы и объекты в php

Дается описание объектно-ориентированного программирования в PHP.

6.4.1 Общие сведения о классах и объектах Классы

Класс понимается в PHP в традиционном для объектно-ориентированных языков смысле.

Упрощенный синтаксис определения класса:

class Имя_класса {   // свойства   модификатор_доступа $имя_свойства1;   модификатор_доступа $имя_свойства2;   ...   модификатор_доступа $имя_свойстваN;     // методы   [модификатор_доступа] function имя_метода1( )   {     тело_метода;   }   [модификатор_доступа] function имя_метода2( )   {     тело_метода;   }   ...   [модификатор_доступа] function имя_методаK( )   {     тело_метода;   } }

Имя класса не чувствительно к регистру. Класс может быть определен в любой части кода PHP. Внимание! В классе имя метода уникально (если не использовать специальных трюков, но не совсем понятно, зачем это нужно), т.е. нельзя определить два метода с одинаковым именем и различным числом параметров.

Обращение к классу может предшествовать его определению. Объект представляет собой экземпляр класса и создается при помощи ключевого слова new (в простейшем случае после new указывается имя класса и круглые скобки).

Для вызова метода объекта или для обращения к свойству используется сочитание символов ->.

Для доступа к свойствам и методам в теле метода используется префикс $this->. Внимание! Если свойство используется без $this->, то интерпретатор может воспринять его как локальную переменную, а метод, как функцию.

Примеры создания класса

Пример:

<?php // определяем класс class Fio_Class {   // определяем свойства   public $first_name;   public $second_name;   public $family;   // определяем методы   function set_name ($par1, $par2, $par3 )   {     $this->first_name = $par1;     $this->second_name = $par2;     $this->family = $par3;          // а вот так неправильно!     // first_name = $par1;   } } // создаем объект $obj1 = new Fio_Class(); // вызываем метод для объекта $obj1->set_name( "Иван", "Иваныч", "Иванов" ); ?>