Laravel: доступ к переменной, объявленной вне функции - PullRequest
0 голосов
/ 19 марта 2019

Я хочу иметь переменную, которая может использоваться внутри и снаружи функций. В руководстве по PHP я нашел следующий пример: http://php.net/manual/ro/language.variables.scope.php

<?php
$a = 1;
$b = 2;

function Sum()
{
    global $a, $b;

    $b = $a + $b;
} 

Sum();
echo $b;
?>

Руководство говорит:

Приведенный выше скрипт выдаст 3.

Но мой вывод laravel для этого кода (в публичной функции показа внутри контроллера) равен 2 .

Как заставить эту работу работать по необходимости?

Ответы [ 2 ]

1 голос
/ 19 марта 2019

Попробуйте этот код

class TestController extends Controller {

private $search;

public function __construct() {
    $this->search = 1;
}

public function global () {
    echo $this->search;
}
0 голосов
/ 19 марта 2019

Я решил это следующим образом:

 */
public function show(Plan $plan)
{
    global $a;
    global $b;

    $a = 1;
    $b = 2;

    function Sum()
    {
        global $a, $b;

        $b = $a + $b;
    }

    Sum();
    echo $b.'<br>';

Итак, идея состоит в том, чтобы использовать global для каждой функции.

...