Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/9: Рейтинг темы: голосов - 9, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 29.09.2014
Сообщений: 12
1

Не работает скрипт, ошибка Cannot redeclare test() (previously declared

07.03.2019, 14:17. Просмотров 1744. Ответов 2

1.Задание
Создайте анонимную функцию и поместите её в переменную. Функция должна просто возвращать сумму двух переданных параметров.
Вызовите эту анонимную функцию с помощью переменной.
Создайте ещё одну функцию, которая принимает массив с чётным количеством элементов в виде чисел, а также принимает вторым параметром функцию.
Внутри этой функции перебирайте сразу по 2 элемента в массиве и выводите результат вызова переданной функции, передавая ей по 2 этих элемента.
Вызовите функцию из 3-го пункта, передав ей массив с 4 числами, а также функцию из 1-го пункта.

2.Решение
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
  $sum = function ($a, $b){
    return $a + $b;
};
 
 
function test(array $data, callable $sum)
{
    foreach (array_chunk($data, 2) as $numbers) {
        echo $sum($numbers[0],$numbers[1]),PHP_EOL;
    }
}
 
$numbers = [2, 3, 4, 5, 6, 7];
 
test($numbers, $sum);
Не могу понять почему не работет скрипт, пишет что Fatal error: Cannot redeclare test() (previously declared in W:\domains\mysite.local\index.php:7) in W:\domains\mysite.local\index.php on line 40
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.03.2019, 14:17
Ответы с готовыми решениями:

Fatal error: Cannot redeclare checks2() (previously declared in file.php on line 45) in file.php on line 45
function result($plist) { foreach ($plist as $arraylist) { $a = getpage($site); //через curl...

Cannot redeclare db_connect() (previously declared
Cannot redeclare db_connect() (previously declared in Z:\home\shop\www\db_fns.php:3) in...

Ошибка Fatal error: Cannot redeclare Point::getX() in E:\OpenServer\domains\test.ru\index.php on line 15
Fatal error: Cannot redeclare Point::getX() in E:\OpenServer\domains\test.ru\index.php on line 15 ...

Ошибка: E;Test_Goal, pos: 321, 103 This domain was declared previously file
Задание:Найти в тексте слова-перевертыши из трех и более символов. Написал программу,и вылезла...

2
940 / 640 / 313
Регистрация: 09.07.2018
Сообщений: 1,560
07.03.2019, 14:25 2
Лучший ответ Сообщение было отмечено Honorum как решение

Решение

Honorum, вполне рабочий код - выводит:
HTML5
1
2
3
5
9
13
Вероятно test() у вас ещё где-то объявлена в этой области видимости.
1
456 / 364 / 94
Регистрация: 01.05.2010
Сообщений: 1,745
07.03.2019, 14:25 3
Лучший ответ Сообщение было отмечено Honorum как решение

Решение

Два раза объявлена функция test
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.03.2019, 14:25

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Fatal error: Cannot redeclare quoted_printable_encode() in C:\home\test.ru\www\index.php on line 60
Имеется форма отправки сообщения на e-mail: <?php session_start(); $admin = 'admin@mail.ru'; ...

Test.cpp:19: error: ‘mysql’ was not declared in this scope
пытаюсь скомпилировать такой код: #include <iostream> #include <mysql/mysql.h> using namespace...

Функция file_exists(test/01.ogg) работает, если папка test находится в корневом каталоге моего сервера.
Столкнулся с интересной проблеммой. Функция file_exists(test/01.ogg) работает, если папка test...

Ошибка Cannot redeclare
выдает ошибку в браузере Fatal error: Cannot redeclare __autoload() (previously declared in...


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

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

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