• Как получить значение из огромной функции, не выходя из нее?

    @Ivan_Bukun
    Конкретно по вопросу:
    1)создать переменную
    2) передать функции переменную по ссылке и вызвать функцию
    3) проверять значение переменной из пункта 1(значение переменной должно изменится после выполнения функции)
    4) твои условия.

    Я не знаю php, поэтому написал пример на C#, но переменные по ссылке, есть и в php, так что это можно загуглить.

    static void Main(string[] args)
    {
        int changeVar = 0; //1)
        int anotherParam = 1;
        do{
            MyFunction(ref changeVar, anotherParam); //2)
            if (changeVar ==1)//3)
            {
                anotherParam +=1;//4)
            }
        }while(changeVar == 1)//4)
    }
    static void MyFunction(ref int changeVar, int anotherParam)
    {
        if (anotherParam < 10) changeVar = 1;
        else changeVar = 0;
    }

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

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