Подскажите как загнать в переменную...

Тема в разделе "PHP", создана пользователем TecT, 6 май 2011.

Модераторы: latteo
  1. TecT

    TecT Пользователь для ТесТа

    Регистр.:
    25 фев 2009
    Сообщения:
    449
    Симпатии:
    44
    Доброе время суток подскажите пожалуйста как в одну переменную загнать кусок кода. Функции не подходят. Заранее спасибо.
     
  2. Miraage

    Miraage Angular/Laravel

    Регистр.:
    3 июн 2008
    Сообщения:
    230
    Симпатии:
    51
    всмысле? чтобы потом выполнить этот код?

    PHP:
    $evalCode = '<?php echo hello world?>';
    eval( $evalCode );
    или конкретизируй. мы мысли не умеем читать
     
  3. TecT

    TecT Пользователь для ТесТа

    Регистр.:
    25 фев 2009
    Сообщения:
    449
    Симпатии:
    44
    Ну вот смотрите простой пример:

    PHP:
    $b 10;
    $c 5;
    if(
    $b $c)
    $c $b;
    else
    $c $b;
    и надо чтоб в итоге всё выводилось:

    PHP:
    echo $a;
     
  4. psknnn

    psknnn

    Регистр.:
    9 окт 2008
    Сообщения:
    379
    Симпатии:
    227
    PHP:
    $b 10;
    $c 5;
    if(
    $b $c)
    $a $c $b;
    else
    $a $c $b;

    echo 
    $a;
    если я правильно понял что надо :D
    если чесно то вообще не понятно требуется ))) подробнее напиши
     
  5. TecT

    TecT Пользователь для ТесТа

    Регистр.:
    25 фев 2009
    Сообщения:
    449
    Симпатии:
    44
    Ну так и я знаю :D я просто привёл самый простой момент ) ладно :

    PHP:
    echo '<span style="font-weight:bold;">Вчера:</span> ';
    if (
    count($yesterday)) {
        foreach(
    $yesterday as $u) {
            echo 
    '<a href="'.$url.'fullinfo.php?user_id='.$u['id'].'" target="_blank">'.$u['nick'].'</a>, ';
        }
    } else {
        echo 
    ' именинников не было.';
    }
    Этот кусок выводит именинников которые были вчера, но мне этот код надо выводить в нескольких файлах, но он слишком большой и громоздкий вот как этот кусок вбить в переменную допустим $vivod?
     
  6. psknnn

    psknnn

    Регистр.:
    9 окт 2008
    Сообщения:
    379
    Симпатии:
    227
    1) самый простой способ, если блок статичный, сохранить в глобальную переменную (либо в переменную видимую в этих файлах) и выводить ее там где надо (если блок большой и время его жизни существенное то в 1 месте кешировать в остальных местах брать из кеша)

    2) если данные в файлах меняются то сделать функцию

    3) выводить через eval, но тут всеравно нужно будет чтоб в файлах был доступ к переменной в которой шаблон сохранишь, это на мой взгляд немножко изврат ))) но тоже сработает
     
  7. zzallexx

    zzallexx

    Регистр.:
    11 июн 2008
    Сообщения:
    1.036
    Симпатии:
    699
    а что мешает этот код поместить в отдельный файл и на нужных страницах его просто инклюдить
     
  8. TecT

    TecT Пользователь для ТесТа

    Регистр.:
    25 фев 2009
    Сообщения:
    449
    Симпатии:
    44
    ничего не мешает но считаю что одной переменной легче и удобней.
     
  9. zzallexx

    zzallexx

    Регистр.:
    11 июн 2008
    Сообщения:
    1.036
    Симпатии:
    699
    что удобней-то почитай что тебе написал psknnn выше :D в твоем варианте с переменной будет так например
    PHP:
    echo $vixod;
    но при этом надо чтобы те другие файлы еще знали что это за переменная $vxod а в варианте с инклюдом например
    PHP:
    require("vixod.php");
     
  10. Belial

    Belial

    Регистр.:
    1 фев 2010
    Сообщения:
    236
    Симпатии:
    113
    А в чём проблема-то? Вбиваем как обычную строку:
    PHP:
    $vivod 'echo \'<span style="font-weight:bold;">Вчера:</span> \';
    if (count($yesterday)) {
        foreach($yesterday as $u) {
            echo \'<a href="\'.$url.\'fullinfo.php?user_id=\'.$u[\'id\'].\'" target="_blank">\'.$u[\'nick\'].\'</a>, \';
        }
    } else {
        echo \' именинников не было.\';
    }'
    ;