Info
Відкрити сторінку на телефоні

Змінні в PHP: передача за значенням або за посиланням

Змінні в PHP можуть передаватися як за значенням, так і за посиланням. Це залежить від типу даних змінної та способу її передачі в функцію.

Передача за значенням:

Прості типи даних:

  • Цілі числа (int)
  • Дійсні числа (float)
  • Рядки (string)
  • Булеві значення (bool)
  • Створені копії:

  • При передачі змінних цих типів в функцію створюються копії їх значень.
  • Зміни, внесені в копії всередині функції, не впливають на оригінальні змінні.
  • Передача за посиланням:

    Складні типи даних:

  • Масиви (array)
  • Об'єкти (object)

  • Посилання на оригінал:

  • При передачі змінних цих типів в функцію передається не копія, а посилання на оригінальну змінну.
  • Зміни, внесені в змінну всередині функції, також змінюють значення оригінальної змінної.
  • Як визначити, за яким принципом передається змінна:

    Символ амперсанда (&):

  • Перед назвою змінної в параметрі функції: передача за посиланням.
  • Приклад: function `foo(&$bar) { ... }`
  • Відсутність символу &:

  • Передача за значенням.
  • Приклад: function `foo($bar) { ... }`