Форум программистов, компьютерный форум, киберфорум
PHP
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
 Аватар для otto-fukin
14 / 60 / 21
Регистрация: 15.06.2017
Сообщений: 572

Реализация интерфейса и Fatal error

11.12.2017, 09:19. Показов 1402. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Найдите отличия
декларация:
PHP
1
abstract public function unserialize(string $serialized);
реализация:
PHP
1
2
3
    public function unserialize(string $serialized) {
        
    }
результат:
Fatal error: Declaration of Custom\Model\PageNav::unserialize(string $serialized) must be compatible with Serializable::unserialize($serialized)
судя по сообщению указание типа аргумента string не нравится. Делаем так:
PHP
1
public function unserialize($serialized)
и получаем следующее:
Fatal error: Cannot redeclare Custom\Model\PageNav::unserialize()
Это что за фича такая? PHP 7.0 Кто нибудь сталкивался?

Добавлено через 4 минуты
все разобрался. действительно string не нужно указывать и void как результат тоже. core.php переписали на новый лад, а начинка старая осталась
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.12.2017, 09:19
Ответы с готовыми решениями:

Fatal error: Uncaught Error: Call to undefined function mysql_query()
Всем привет,ребят подскажите что за ошибка? что нужно сделать? Пишет ошибку Fatal error: Uncaught Error: Call to undefined function...

Fatal error: Uncaught Error: Call to undefined function split()
<?php $wordcounts = array( ); $words = split( " ", "CNN number Americans disapproving President Bush job perance risen highest level...

Fatal error: Uncaught Error: Call to undefined function mcrypt_ecb()
<?php error_reporting(E_ALL & ~E_NOTICE); // Шифруем пароль $user_password = "gfkjxrb99"; $key = "Это секретный...

5
123 / 77 / 33
Регистрация: 05.03.2013
Сообщений: 449
16.12.2017, 00:27
Тип аргумента можно только расширить, а варианты возвращаемых - только сузить.

У тебя в родителе указан максимально широкий тип - любой. А ты пытаешься его сузить, указав более узкий тип стринг.
0
 Аватар для otto-fukin
14 / 60 / 21
Регистрация: 15.06.2017
Сообщений: 572
16.12.2017, 04:54  [ТС]
Посмотри в core.php как объявлен родитель. Ничего я сужать не пытался, а прописал такие аргументы как указал разработчик пхп. Если бы он не объявлял тип аргумента стринг - не было бы темы
0
123 / 77 / 33
Регистрация: 05.03.2013
Сообщений: 449
16.12.2017, 05:26
Как я могу посмотреть твои файлы, которые лежат на твое компе/серве? Скопипасти код сюды, с удовольствием посмотрю. И уж извени, но компилятору я верю больше, чем тебе.
0
 Аватар для otto-fukin
14 / 60 / 21
Регистрация: 15.06.2017
Сообщений: 572
16.12.2017, 06:09  [ТС]
Цитата Сообщение от andr-xw Посмотреть сообщение
уж извени, но компилятору я верю больше, чем тебе.
С вопросами веры в компилятор - это в секту "свидетелей Компилятора php".Там его все видели.

справка php: (http://php.net/manual/ru/function.unserialize.php)
Описание
mixed unserialize ( string $str [, array $options ] )
Объявление интерфейса:
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
/**
 * (PHP 4, PHP 5, PHP 7)<br/>
 * Creates a PHP value from a stored representation
 * @link http://php.net/manual/en/function.unserialize.php
 * @param string $str <p>
 * The serialized string.
 * </p>
 * <p>
 * If the variable being unserialized is an object, after successfully
 * reconstructing the object PHP will automatically attempt to call the
 * __wakeup() member
 * function (if it exists).
 * </p>
 * <p>
 * unserialize_callback_func directive
 * <p>
 * It's possible to set a callback-function which will be called,
 * if an undefined class should be instantiated during unserializing.
 * (to prevent getting an incomplete object "__PHP_Incomplete_Class".)
 * Use your <i>php.ini</i>, <b>ini_set</b> or .htaccess
 * to define 'unserialize_callback_func'. Everytime an undefined class
 * should be instantiated, it'll be called. To disable this feature just
 * empty this setting.
 * </p>
 * </p>
 * @param array $options [optional] <p>
 * Any options to be provided to <b>unserialize</b>, as an
 * associative array.
 * </p>
 * <table>
 * Valid options
 * <tr valign="top">
 * <td>Name</td>
 * <td>Type</td>
 * <td>Description</td>
 * </tr>
 * <tr valign="top">
 * <td>allowed_classes</td>
 * <td>mixed</td>
 * <td>
 * Either an array of class names which should be
 * accepted, <b>FALSE</b> to accept no classes, or <b>TRUE</b> to accept all
 * classes. If this option is defined and
 * <b>unserialize</b> encounters an object of a class
 * that isn't to be accepted, then the object will be instantiated as
 * <b>__PHP_Incomplete_Class</b> instead.
 * Omitting this option is the same as defining it as <b>TRUE</b>: PHP
 * will attempt to instantiate objects of any class.
 * </td>
 * </tr>
 * </table>
 * @return mixed The converted value is returned, and can be a boolean,
 * integer, float, string,
 * array or object.
 * </p>
 * <p>
 * In case the passed string is not unserializeable, <b>FALSE</b> is returned and
 * <b>E_NOTICE</b> is issued.
 */
function unserialize(string $str, array $options = null) {}
0
123 / 77 / 33
Регистрация: 05.03.2013
Сообщений: 449
16.12.2017, 06:26
Цитата Сообщение от otto-fukin Посмотреть сообщение
Описание
mixed unserialize ( string $str [, array $options ] )
Это нотация документации, она не является валидным пхп кодом и не является примером кода. Это просто наглядный способ показать, какого типа аргументы ждет функция. Примеры кода там есть ниже.

Добавлено через 1 минуту
Про интерфейсы не понял. У функций не бывает интерфейсов.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
16.12.2017, 06:26
Помогаю со студенческими работами здесь

Реализация поиска: Fatal error: Call to a member function fetch_assoc() on a non-object in
не работает реализация поиска выдает ошибку Fatal error: Call to a member function fetch_assoc() on a non-object in &lt;?php ...

PHP Fatal error: Uncaught Error: Call to undefined function curl_init()
Всем привет! Знаю, проблема обсосана со всех сторон. Получаю вот это: PHP Fatal error: Uncaught Error: Call to undefined...

Fatal error: Uncaught Error: Call to a member function execute() on null
Не получается у меня побороть эту хрень. Читал и http://phpfaq.ru/pdo#intro и http://php.net/manual/ru/book.pdo.php НЕ пойму я как...

PHP Fatal error: Uncaught Error: Call to undefined function mb_strlen()
У меня в файлах запускаемых кроном используется функция mb_strlen(), когда заметил что скрипт не работает запустил его из консоли, мне...

Fatal error: Uncaught Error: Call to undefined function can_upload()
Собрал конструктор тут не большой ... В БД отлично все уходит но фотки в папку не сохраняются почему то. Пишет неопределенная функция ......


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит: токи, напряжения и их 1 и 2 производные при t = 0;. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru