Главная страница
Навигация по странице:

  • Аргументы функции

  • Объединение массивов

  • Пхп массивы и функции. php Массивы и функции в PHP. Конспект Массивы и функции в php


    Скачать 19.02 Kb.
    НазваниеКонспект Массивы и функции в php
    АнкорПхп массивы и функции
    Дата16.05.2022
    Размер19.02 Kb.
    Формат файлаdocx
    Имя файлаphp Массивы и функции в PHP.docx
    ТипКонспект
    #533195

    Конспект «Массивы и функции в PHP»

    Функции

    Функция — это фрагмент кода, который можно написать один раз, а затем использовать, когда потребуется.

    Прежде чем использовать функцию, её объявляют с помощью ключевого слова function. После него указывают имя функции. Оно должно начинаться с латинской буквы или знака подчёркивания.

    После имени функции пишут круглые скобки, а затем — тело функции в фигурных скобках. В теле функции находится тот код, который функция будет выполнять.

    function my_func() {

    keks_log('Я функция my_func');

    }

    Когда функцию объявляют, PHP запоминает её, но при этом код внутри фигурных скобок не выполняется. Чтобы его выполнить, функцию надо вызвать.

    Чтобы вызвать функцию, пишем её имя и круглые скобки:

    my_func(); // Выведет: "Я функция my_func"

    Функцию можно вызывать любое число раз.

    Переменные, объявленные внутри функции, доступны только внутри этой функции. А внешние переменные, наоборот, внутри функции не видны. Это называется областью видимости. Вы можете узнать о ней больше в документации.

    Мы можем вызывать одну функцию внутри другой.

    Аргументы функции

    Аргументы позволяют передавать функции разные данные и влиять на результат её работы. Аргументы указывают при объявлении функции в круглых скобках. Их может быть сколько угодно. Если аргументов несколько, они указываются через запятую.

    Аргументы похожи на переменные. Они тоже хранят значения, и их имена должны начинаться со знака доллара. Аргументы можно использовать только в теле функции:

    function my_func($number_1, $number_2) {

    keks_log($number_1 - $number_2);

    }

    Значения аргументов указывают в круглых скобках при вызове функции. Их перечисляют через запятую в том же порядке, что и аргументы при объявлении функции.

    my_func(3, 1); // Выведет: "2"

    my_func(1, 3); // Выведет: "-2"

    Функция возвращает значение

    Функции могут не только принимать данные, но и возвращать их. Чтобы указать, какое значение должна вернуть функция, используют ключевое слово return:

    function my_func($number_1, $number_2) {

    return $number_1 - $number_2;

    }

    Когда функцию вызовут, на её место в коде подставится то значение, которое она вернёт.










    2


    Вернув значение, функция прекратит работу. Последующий код в теле функции PHP проигнорирует.

    function my_func($number_1, $number_2) {

    return $number_1 - $number_2;

    // Код на следующей строке никогда не будет исполнен

    keks_log('Есть ли жизнь после return?');

    }

    Функция может ничего не возвращать или вернуть одно любое значение: число, строку, массив и так далее.

    Встроенные функции

    Встроенные функции — это функции, которые написали создатели PHP. Это часть языка, поэтому их не нужно объявлять, прежде чем использовать. В PHP существуют тысячи готовых функций. Нет нужды заучивать их наизусть, ведь всегда можно заглянуть в документацию.

    Колбэком называют функцию, которую передают в качестве аргумента другой функции. Колбэки не являются встроенными функциями, их пишут сами разработчики.

    uasort

    Встроенная функция uasort сортирует массив. Эта функция принимает два аргумента: массив, который нужно отсортировать, и имя функции-колбэка.

    uasort($array, 'callback');

    Функция-колбэк, которую мы передаём uasort, должна принимать два аргумента и возвращать число: положительное число, если первый аргумент больше, отрицательное число, если больше второй аргумент, и ноль, если аргументы равны.

    Во время вызова uasort передаёт в колбэк по двое элементы массива, узнаёт, какой из них больше, и сортирует массив по возрастанию: от меньшего к большему.

    array_slice

    Функция array_slice принимает массив, копирует его часть и возвращает её в виде нового массива. Массив, который передали функции, при этом не изменяется.

    Функция принимает четыре аргумента:

    • исходный массив,

    • порядковый номер элемента, с которого начнётся копирование,

    • количество элементов, которые нужно скопировать,

    • булево значение — нужно ли сохранять ключи исходного массива.

    $new_array = array_slice($array, $first_element, $length, $preserve_keys);

    array_filter

    В PHP есть встроенная функция фильтрации — array_filter. Она принимает два аргумента: исходный массив и функцию-колбэк — и возвращает новый массив. Исходный массив при этом не изменяется.

    $filtered_array = array_filter($array, 'callback');

    Согласно документации, колбэк должен принимать элемент исходного массива и возвращать булево значение: true, если этот элемент нужно включить в новый массив, и false, если не нужно.

    array_rand

    Для получения случайных элементов из массива, используем функцию array_rand. Она принимает исходный массив и количество случайных элементов, которые мы хотим получить.

    $random = array_rand($array, $number_of_elements);

    Если второй аргумент — единица, функция вернёт один случайный ключ. Если второй аргумент больше единицы, функция вернёт массив со случайными ключами.

    Функция array_rand выбирает случайные элементы, но возвращает их в том порядке, в каком они идут в исходном массиве.

    shuffle

    Встроенная функция shuffle перемешивает массив. Функция принимает массив и выстраивает его элементы в случайном порядке. Будьте осторожны, функция shuffle изменяет переданный ей массив и не сохраняет ключи. С ассоциативными массивами её лучше не использовать.

    shuffle($array);

    Объединение массивов

    В PHP массивы можно объединить с помощью знака плюс:

    $big_array = $array_1 + $array_2;

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

    Если у нескольких элементов окажутся одинаковые ключи, то значение возьмётся из того массива, который идёт раньше. Перед объединением убедитесь, что ключи в массивах не совпадают или что одинаковым ключам соответствуют одинаковые значения.


    написать администратору сайта