За последние 24 часа нас посетили 19985 программистов и 1394 робота. Сейчас ищут 934 программиста ...

Если ли в PHP такая возможность

Тема в разделе "Прочие вопросы по PHP", создана пользователем Nail2010, 20 фев 2024.

  1. Nail2010

    Nail2010 Новичок

    С нами с:
    18 фев 2023
    Сообщения:
    3
    Симпатии:
    0
    Вот пример

    function myFunct(){
    return "data";
    }

    function myFunctSecond(){
    $data = myFunct();
    return $data;
    }

    echo myFunctSecond();

    Можно ли просто завершить myFunctSecond(), исходя из функции myFunct()? Пример может не совсем удачный, но описывает суть... В больших проектах это бы сократило код..
     
  2. Vladimir Kheifets

    Vladimir Kheifets Новичок

    С нами с:
    23 сен 2023
    Сообщения:
    485
    Симпатии:
    95
    Адрес:
    Бавария, Германия
    Добрый день!
    Да, такая возможность есть. Как в Вашем примере можно в одной функции вызвать другую функцию.
    Однако, в больших проекта целесообразно объединять функции в классы и определять их как методы.
    Удачи!
     
  3. Дюран

    Дюран Активный пользователь

    С нами с:
    9 мар 2018
    Сообщения:
    291
    Симпатии:
    21
    В одной функции вы другую не завершите. Исключение можно бросить конечно.
    Лучше вам детальней обьяснить желаемое
     
    artoodetoo и MouseZver нравится это.
  4. Vladimir Kheifets

    Vladimir Kheifets Новичок

    С нами с:
    23 сен 2023
    Сообщения:
    485
    Симпатии:
    95
    Адрес:
    Бавария, Германия
    Добрый день!
    Мы обсуждаем тему "Если ли в PHP такая возможность".
    Вопрос был зададан о завершение функции. Что же такое завершение функции?
    В связи с функциями в PHP (и не только) употреблеются несколько терминов: определение, вызов, выполнение и возврат значений.
    Возврат значений оператором return приводит к завершению выполнения функции.
    Если оператора return нет, то выполнение завершается исполнением последнего оператора в теле функции и возвращается значение null.
    В примере к теме рассмотрены две функции. Функция myFunctSecond вызывает функцию myFunct. После завершения выполнения myFunct возвратом значения "data", myFunctSecond возвращает полученное значение оператором return и завершает выполнение.

    Во всех случаях, и не только больших проектах, желательно оформлять повторящиеся части кода как функции или классы.
    Это сокращает размер кода.
    Верно ли я понял вопрос или есть какой-то потаённый смысл?

    Удачи!
     
    #4 Vladimir Kheifets, 21 фев 2024
    Последнее редактирование: 21 фев 2024
  5. Дюран

    Дюран Активный пользователь

    С нами с:
    9 мар 2018
    Сообщения:
    291
    Симпатии:
    21
    лол, это chatGPT написал?
     
  6. Nail2010

    Nail2010 Новичок

    С нами с:
    18 фев 2023
    Сообщения:
    3
    Симпатии:
    0
    Печально... Исключение, думаю это не очень хороший выход.. Но, спасибо за ответ...
    --- Добавлено ---
    Думаю, что классы не были созданы, как корзинка для функций... У классов другое предназначение... Но все же спасибо за ответ...
     
  7. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.128
    Симпатии:
    1.248
    Адрес:
    там-сям
    Поддерживаю @Дюран : "Лучше вам детальней обьяснить желаемое"
    @Nail2010. Чем "просто завершить" отличается от return? Пример действительно не удачный. потому что он не показывает проблему.

    "Просто сократить код" можно например так:
    return myFunct();