Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: проблема с методом

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: проблема с методом
slmzig
Отправлено: 13 Декабря, 2012 - 12:32:36
Post Id


Новичок


Покинул форум
Сообщений всего: 24
Дата рег-ции: Дек. 2012  


Помог: 0 раз(а)




Хочу создать тоже но через ООП
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. function sum($a,$b)
  3. {
  4. $c=$a+$b;
  5. echo $c;
  6. }
  7.  
  8. sum(5,5);
  9. ?>
  10.  
у меня получилось от так:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. class Sum{
  4. var $a;
  5. var $b;
  6. var $c;
  7. function suma($a,$b)
  8. {
  9. $this->a=$a;
  10. $this->b=$b;
  11. $this->c=$this->a+$this->b;
  12. echo $this->c;
  13. }
  14. }
  15. $obj = new Sum;//28 строка
  16. var_dump($obj);
  17. echo "<br>";
  18. $obj-> suma(5,5);
  19. var_dump($obj);
  20. ?>

Parse error: syntax error, unexpected T_VARIABLE, expecting T_FUNCTION in Z:\home\localhost\www\5.php on line 28


Отредактировано модератором: Мелкий, 13 Декабря, 2012 - 12:42:43
 
 Top
ams
Отправлено: 13 Декабря, 2012 - 12:39:27
Post Id



Посетитель


Покинул форум
Сообщений всего: 351
Дата рег-ции: Нояб. 2010  


Помог: 13 раз(а)




Код рабочий, ничего вроде критичного нет
 
 Top
caballero
Отправлено: 13 Декабря, 2012 - 13:22:21
Post Id


Активный участник


Покинул форум
Сообщений всего: 5998
Дата рег-ции: Сент. 2011  
Откуда: Харьков


Помог: 126 раз(а)




ну да совсем ничего критичного, разве что пробел между стрелкой и именем функции - всего делов то


-----
Бесплатная система складского учета с открытым кодом https://zippy[dot]com[dot]ua/zstore
 
 Top
tato
Отправлено: 13 Декабря, 2012 - 13:26:48
Post Id



Посетитель


Покинул форум
Сообщений всего: 468
Дата рег-ции: Сент. 2011  
Откуда: Владивосток


Помог: 8 раз(а)




Никаких var.

PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. class Sum
  4. {
  5.  
  6.     private
  7.         $a = 0,
  8.         $b = 0;
  9.  
  10.     public function __construct( $a, $b )
  11.     {
  12.         $this->a = $a;
  13.         $this->b = $b;
  14.     }
  15.    
  16.     public function suma()    
  17.     {
  18.         return $this->a + $this->b;
  19.     }
  20.  
  21. }
  22.  
  23.  
  24. $sum = new Sum( 5, 5 );
  25.  
  26. echo $sum->suma();
  27. ?>
  28.  

(Добавление)
caballero пишет:
ну да совсем ничего критичного, разве что пробел между стрелкой и именем функции - всего делов то


Не имеет значения, все отработает как надо.


-----
просто ?: сложно
 
 Top
Мелкий Супермодератор
Отправлено: 13 Декабря, 2012 - 14:20:02
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




caballero пишет:
разве что пробел между стрелкой и именем функции

Они там действительно могут стоять. А так же табуляция, переводы строк.

slmzig, какая у вас версия PHP?


-----
PostgreSQL DBA
 
 Top
DelphinPRO
Отправлено: 13 Декабря, 2012 - 14:28:52
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




slmzig пишет:
on line 28

в вашем листинге только 20 строк. Вы показали код не так как он у вас написан, и хотите, что бы мы отгадали, где у вас синтаксическая ошибка. Не отгадаем.


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
roussakov
Отправлено: 16 Января, 2013 - 22:17:51
Post Id


Новичок


Покинул форум
Сообщений всего: 1
Дата рег-ции: Янв. 2013  


Помог: 0 раз(а)




автор вроде как при создание объекта допускает ошибку в синтаксе
$obj = new Sum;//28 строка

а надо
$obj = new Sum();//28 строка
 
 Top
LIME
Отправлено: 16 Января, 2013 - 22:21:53
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




roussakov нет
можно без скобок
(Добавление)
более того
в своем лисапеде я даже без new обхожусь))
 
 Top
OrmaJever Модератор
Отправлено: 16 Января, 2013 - 22:46:26
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)





LIME пишет:
в своем лисапеде я даже без new обхожусь))

а без имени класса слабо?


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
LIME
Отправлено: 16 Января, 2013 - 23:02:24
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




OrmaJever только в объявлении))
(Добавление)
http://forum.php.su/topic.php?fo...68467#1358368467
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Объектно-ориентированное программирование »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB