Вопрос как сделать перебор значение для определения уровня вложенности

Тема в разделе "Как сделать...", создана пользователем al430, 5 фев 2014.

  1. al430

    al430 Постоялец

    Регистр.:
    31 окт 2010
    Сообщения:
    94
    Симпатии:
    9
    Есть код

    PHP:
    $vlogeni 2// уровень вложенности
    $FOLDER joinstrstr(__FILE__"/") ? "/" "\\"array_slicepreg_split("/[\/\\\]+/"__FILE__), 0, -$vlogeni) ).( strstr(__FILE__"/") ? "/" "\\" );
    include_once (
    $FOLDER."inc.php");

    if(!
    mysql_connect($MYSQL_HOST,$MYSQL_USER,$MYSQL_PASSWORD)){
    die(
    'Not connect MySQL!');
        }
    если файл лежит во втором уровне вложенности то скрипт получит данные из файла inc.php и сможет подключиться к MYSQL - mysql_connect($MYSQL_HOST,$MYSQL_USER,$MYSQL_PASSWORD)
    то код будет выполняться далее
    как сделать чтобы скрипт сам подставлял уровень вложенности, допустим от 1 до 10 и при удачном подключении к MYSQL выводил это число
     
    Последнее редактирование: 5 фев 2014
  2. Горбушка

    Горбушка Ищу её...

    Регистр.:
    2 май 2008
    Сообщения:
    3.036
    Симпатии:
    2.039
    PHP:
    $i 0;
    while (
    $i 10) {
    $i++;
    //Много кода
    }
    Или не вариант? =)

    Только не понял ни черта из Вашего скрпита... Строчки никак не связаны, а $vlogeni используется только чтоб был, в коде его дальше нету...

    P.s. и научитесь пользоваться bbcode...
     
  3. nejtr0n

    nejtr0n Постоялец

    Регистр.:
    24 янв 2014
    Сообщения:
    97
    Симпатии:
    40
    Рекурсия - Ваш выбор.
    Код:
    <?php
    ini_set('max_execution_time',4);
    // Delimiter
    $del = strstr(__FILE__, "/") ? "/" : "\\";
    // Recursion
    function loader ($offset, $del) {
        $offset--;
        $FOLDER = $del.implode($del, array_slice(preg_split("/[\/\\\]+/", __FILE__, -1 , PREG_SPLIT_NO_EMPTY), 0, $offset)).$del;
        include_once ($FOLDER."inc.php");
        if (!defined('INC')) {
            return loader ($offset, $del);
        } else {
            return $offset;
        }
    }
    var_dump(loader(0,$del));
    ?>
    В этом примере условием для выходя из рекурсии является нахождение константы INC, которая определена в файле inc.php
    тремя каталогами выше. Как модифицировать его под себя я думаю разберетесь.
     

    Вложения:

    • blah.rar
      Размер файла:
      663 байт
      Просмотров:
      2