На самом деле класс в php это простой контейнер который выглядит вот так:

                        
<?
class Plus{ }

?>

с начало объявляем что это class, далее придумываем названия нашего класса в нашем случаи это Plus. Вот собственно и весь класс в который мы будем добавлять функции. Саму функцию мы с вами сделаем простенькую, наша функция будет умножать два числа и выводить результат, выглядеть функция будет так:

<?

function slohenia($a, $d){

$c = $a + $d;

}

?>

но на данный момент это просто функция поэтому создадим папку class и в этой папке создадим файл Plus.php. Как вы догадались мы создали папку class для хранения наших классов. Теперь открываем файл Plus.php и пишем в нем наш класс а внутри класса нашу функцию, все вместе выглядит так:

<?

class Sms{ function slohenia($a, $d){

$c = $a + $d;

echo $c;

}

}

?>

как видите все просто создали класс в него поместили функцию, в один класс можно помещать множество нужных вам функций.

Теперь нужно сделать так чтоб при обращении к классу он у нас подгружался автоматически, сделать это можно при помощи специальной функции авто загрузка классов, пишется данная функция следующим образом:

<?
function __autoload( $className ) {

$className = str_replace( "..", "", $className );

require_once( "class/$className.php" );

}
?>

все что вам надо изменить в данной функции это в третей строчке путь к папке где лежат вашы классы, также данную функцию рекомендую подключить к всем php файлам чтоб к нашим классам можно было обращаться в любом месте.

Теперь когда все готово можно обратится к нашему классу Plus и к функции внутри этого класса slohenia а также нужно передать еще две переменные для сложения, обращаться к классу и функции внутри него можно так:

view sourceprint?

<?
Plus::slohenia(9, 1);
?>

как видите очень просто и очень удобно, самое интересное что меня побудило использовать классы в php это то что подгружается только то что нам требуется а также то что нету такой каши в коде как было раньше.
3 11 0
0

Нет фото
• 8 май 2013, 08:22


Простой контейнер? А как же наследование, полиморфизм, инкапсуляция? Не совсем точное определение *