![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| Aliance |
|
|||
![]() I ♥ <script> ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6418 Регистрация: 2.8.2004 Где: spb Репутация: 14 Всего: 137 |
Никогда не понимал прежназначения классов. Вообще ООп для меня густой лес
Почитал вот эту темку, думал разберусь, ах нет. Не особо понимаю для чего они нужны. Можно просто пример с 1 (одной!!!) переменной, и различные закомментированные действия с ней. Что значат всякие стрелочки ->...ох...как это все трудно |
|||
|
||||
| Irokez |
|
||||
![]() индеец ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1180 Регистрация: 20.10.2004 Репутация: 22 Всего: 53 |
стрелочки имеют такую же функцию как и точка в JavaScript
$SomeObject->method() - вызывает какой-либо метод экземпляра класса $SomeObject $SomeObject->property - дает доступ к переменной класса, в пхп4 все переменные класса - публичные (public), в пятой версии это уже не так, но пока пхп5 еще не прижился, рассматривать его не будем объявление сласса:
здесь мы объявили класс - MyClass, у него задана переменная - myVar, переменные класса объявляются после ключевого слова - var у класса имеются два метода - MyClass - конструктор класса и метод printVar конструкторы в пхп4 должны иметь такое же имя как и сам класс. теперь поробуем использовать объявленные класс:
Это сообщение отредактировал(а) Irokez - 3.5.2005, 08:44 |
||||
|
|||||
| Aliance |
|
||||||||||||
![]() I ♥ <script> ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6418 Регистрация: 2.8.2004 Где: spb Репутация: 14 Всего: 137 |
Понятно, а пробелы вокруг нее можно ставить?
это обязательно во всех функциях, или только где необходимо? И вообще смысл применения. Где классы рационально использовать? Ведь
можно заменить на простое
И еще имя конструктора должно совпадать с именем класса?
вот тут ты ничего не перепутал? Пишет:
Это сообщение отредактировал(а) Aliance - 2.5.2005, 21:40 |
||||||||||||
|
|||||||||||||
| Irokez |
|
||||||||||
![]() индеец ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1180 Регистрация: 20.10.2004 Репутация: 22 Всего: 53 |
да можно: $myObj -> method(), но по стандартам PEAR, пробелы не ставятся
нет, это необязательно, просто привычка
классы рационально использовать (на мой взгляд) в больших проектах - там где много функций и переменных, классы позволяют структурировать скрипты, облегчая их.. но это чисто мое мнение, другие скажут наоборот. вообще конечно классы в пхп4 реализованы не лучшим образом, поэтому на каждый плюс есть и свои минусы. к примеру мне очень не хватает в классах пхп4 - перегрузки методов. Добавлено @ 21:46
ой, конечно напутал, должно быть: var $myVar;
да, это обязательно |
||||||||||
|
|||||||||||
| Aliance |
|
|||
![]() I ♥ <script> ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6418 Регистрация: 2.8.2004 Где: spb Репутация: 14 Всего: 137 |
А наличие конструктора обязательно? Что он делает? Может их быть несколько?
Добавлено @ 22:01
Fatal error: Call to undefined function: myclass() in classes.php on line 18 Где ошибка-то? |
|||
|
||||
| Mal Hack |
|
||||||||||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 122 Всего: 261 |
нет
просто функция, котоая выполняется при создании объекта.
нет
$myObj = & new MyClass('лалала'); |
||||||||||
|
|||||||||||
| Aliance |
|
|||
![]() I ♥ <script> ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6418 Регистрация: 2.8.2004 Где: spb Репутация: 14 Всего: 137 |
Спасибо все работает.
Еще вопрос: чтобы принять значение для переменной $myVar, нужно передать ей аргументом значение и присвоить его. Соотв. чтобы их было 2 - 2 аргумента. Но если их 1000. ИМХО не удобно так. Возникла идея - массив. Можно реализовать нечто такое:
Т.е. значения таковые: $myVar['1'] = 'первое значение'; $myVar['2'] = 'второе'; Что-то в этом духе... |
|||
|
||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 122 Всего: 261 |
Да.
|
|||
|
||||
| Irokez |
|
|||
![]() индеец ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1180 Регистрация: 20.10.2004 Репутация: 22 Всего: 53 |
кошмар .. надо ж было мне так ошибиться $myObj = new MyClass('лалала'); |
|||
|
||||
| IZ@TOP |
|
||||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
Конечно можно.
-------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
||||
|
|||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |