Переменная в настройке конфигурации CakePHP - PullRequest
1 голос
/ 30 августа 2010

Может быть простой способ достичь того, что я пытаюсь сделать в CakePHP, но я не могу. вот что я пытаюсь сделать: У меня есть файл настроек, который я читаю через объект конфигурации, и настройки как

$config['pageMeta']=array(
'1'=>array('desc'=>'<?php echo $param1 ?> some data, <?php echo $param2 ?> some content in <?php echo $param3 ?>')
);

Я хотел бы прочитать приведенную выше строку как

Configure::read('pageMeta.1.desc'); и каким-то образом оцените «param1», «param2» и «param3», замененные фактическими значениями. Я делаю это в макете представления. Я мог бы написать функцию для замены строк, но не уверен, что это правильный путь.

Любая помощь приветствуется.

спасибо aboxy

1 Ответ

0 голосов
/ 30 августа 2010

"<?php echo $param1 ?>" с целью замены строки внутри строки - плохая идея.Есть лучшие способы сделать это:

  1. Собственный торт String::insert функция:

    $str = 'Hello :place, the :noun is :adjective.';
    echo String::replace($str, array('place' => 'World', 'noun' => 'weather', 'adjective' => 'hot'));
    // Hello World, the weather is hot.
    
  2. PHP sprintf:

    $str = 'Hello %s, the %s is %s.';
    echo sprintf($str, 'World', 'weather', 'hot');
    // Hello World, the weather is hot.
    

Возможно, вы просто ищете стандартную локализацию .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...