Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP
Войти
Регистрация
Восстановить пароль
 
grizmang
-8 / 1 / 0
Регистрация: 21.01.2018
Сообщений: 80
1

как исправить ошибку Warning: The magic method __toString() must have public visibility and cannot be static

05.02.2018, 14:45. Просмотров 200. Ответов 10
Метки нет (Все метки)

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php
 
  error_reporting(E_ALL & ~E_NOTICE);
 
  class employee
  {
    public function __construct($surname, $name, $patronymic, $age = 18)
    {
      $this->surname = $surname;
      $this->name = $name;
      $this->patronymic = $patronymic;
      $this->age = $age;
    }
    private function __toString()
    {
      return "{$this->surname} {$this->name[0]}.{$this->patronymic[0]}.";
    }
    private function __get($index)
    {
      return $this->$index;
    }
 
    public $surname;
    public $name;
    private $patronymic;
  }
?>
Warning: The magic method __toString() must have public visibility and cannot be static in E:\OpenServer\domains\php\01\1.17\class.employee.php on line 14

Warning: The magic method __get() must have public visibility and cannot be static in E:\OpenServer\domains\php\01\1.17\class.employee.php on line 18
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.02.2018, 14:45
Ответы с готовыми решениями:

Исправить Deprecated: Non-static method cls::__set_state() should not be called statically
Deprecated: Non-static method cls::__set_state() should not be called...

Как исправить: Strict standards: Non-static method YaMailClass::getInstance() should not be called statically in
Вот ошибка: Strict standards: Non-static method YaMailClass::getInstance()...

Как исправить ошибку "Program does not contain a static 'Main' method"
Просто взял и переписал пример из книги Шилдт.Г С#4.0 полное руководство ,вот...

Ошибка “non-static method cannot be referenced from a static context”
Проблема в том, что в одном классе он просто сделать методы static, а в другом...

Ошибка: Cannot make a static reference to the non-static method
решил учить андроид. решил написать чат, но при создании сервера на Java по...

10
Jodah
Эксперт PHP
2850 / 2481 / 1057
Регистрация: 01.08.2012
Сообщений: 8,772
05.02.2018, 15:20 2
Только начали обучение и уже ООП? Рановато, начните с чего-нибудь попроще.

И заодно научитесь читать ошибки.
Цитата Сообщение от grizmang Посмотреть сообщение
The magic method __toString() must have public visibility and cannot be static
Описание же настолько простое и понятное...
0
grizmang
-8 / 1 / 0
Регистрация: 21.01.2018
Сообщений: 80
05.02.2018, 15:42  [ТС] 3
Магический метод __toString () должен иметь видимость общественности и не может быть статическим

Добавлено через 2 минуты
подчеркиваеие одно убрал и ошибку куда-то улетела
0
Зверушь
439 / 349 / 91
Регистрация: 01.05.2010
Сообщений: 1,686
05.02.2018, 16:07 4
Ололо!
Вы что, на кофейной гуще гадаете? Начните с основ языка...
0
grizmang
-8 / 1 / 0
Регистрация: 21.01.2018
Сообщений: 80
05.02.2018, 16:16  [ТС] 5
Цитата Сообщение от Зверушь Посмотреть сообщение
Вы что, на кофейной гуще гадаете? Начните с основ языка...
подчеркиваеие одно убрал и ошибку куда-то улетела
все нет ошибки ура
0
sash23
149 / 131 / 104
Регистрация: 31.05.2016
Сообщений: 367
05.02.2018, 16:17 6
public function __toString
0
grizmang
-8 / 1 / 0
Регистрация: 21.01.2018
Сообщений: 80
05.02.2018, 16:18  [ТС] 7
а в книге приват стоит почемуто
0
Jodah
Эксперт PHP
2850 / 2481 / 1057
Регистрация: 01.08.2012
Сообщений: 8,772
05.02.2018, 17:38 8
grizmang, подскажите авторов и название книги.
0
grizmang
-8 / 1 / 0
Регистрация: 21.01.2018
Сообщений: 80
05.02.2018, 17:53  [ТС] 9
https://cdn1.savepice.ru/uploads/201...e2038-full.jpg
0
Jodah
Эксперт PHP
2850 / 2481 / 1057
Регистрация: 01.08.2012
Сообщений: 8,772
05.02.2018, 18:21 10
grizmang,

"Второе издание полностью переработано, учтены нововведения версий РНР 5.1 и 6.0."
Понятно, просто издание слишком старое. Код из учебника будет работать только в PHP 5.2 и ниже, в 5.3 так писать уже нельзя.

В любом случае, начинать сразу с ООП не рекомендую. Найдите учебник, где описываются самые основы. Вот это, например:

PHP 7. Наиболее полное руководство (3-е издание)
Год издания: 2016
Автор: Дмитрий Котеров, Игорь Симдянов

Сам не читал, но судя по оглавлению и отзывам, должен подойти. На всем известном трекере присутствует.
0
grizmang
-8 / 1 / 0
Регистрация: 21.01.2018
Сообщений: 80
05.02.2018, 20:46  [ТС] 11
Котерова уже прочитал
читаю теперь все подряд
0
05.02.2018, 20:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.02.2018, 20:46

Волновой алгоритм выдает ошибку "Does not contain a static Main method"
Вот код это волновой алгоритм вроде написано все правильно но выдает ошибку...

Вызов public метода public класса внутри static метода static класса
Подскажите, пожалуйста, возможен вызов не статического метода не статического...

Как в Button17 объявить делегат на методы класса static string toString (Complex A)
Доврый день! using System; using System.Collections.Generic; using...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru