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

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

11.12.2017, 09:19. Показов 1412. Ответов 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
Ответ Создать тему
Новые блоги и статьи
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru