Как установить $ {var_name} - PullRequest
       9

Как установить $ {var_name}

0 голосов
/ 24 февраля 2011

Мы разрабатываем почтовую систему, и мы бы хотели, чтобы пользователь мог добавить собственное приветствие при создании сообщения ... например, проверьте следующее ...

мы установим эту переменную (var_name) в PHP.

Hello ${var_name},
This is test message.

мы не используем фреймворк.

Ответы [ 4 ]

3 голосов
/ 24 февраля 2011

А как насчет str_replace?

$text = str_replace('${var_name}', $var_name, $text);
1 голос
/ 24 февраля 2011

Я бы использовал PHP в качестве языка шаблонов:

Hello <?php echo $name; ?>,
This is a test message.

Тогда вы можете заменить их следующим образом:

function render($template, $vars = array()) {
    extract($vars, EXTR_SKIP);
    ob_start();
    include $template;
    return ob_get_clean();
}

echo render('email.tmpl', array('name' => 'Foo'));
0 голосов
/ 24 февраля 2011
$var_name = 'Powtac';

// ...

$template = "Hello ${var_name},
This is test message.";

echo $template;
0 голосов
/ 24 февраля 2011

Одним из способов является следующее:

Создайте отдельный файл .php для каждого шаблона электронной почты, например так:

//email_text.php
Hello <?php echo $name ?>, <br/>
How are you doing?<br/>
Your truly,<br/>
<?php echo $author ?>

На странице, которая отправляет электронные письма, высделать что-то вроде этого -

$name = 'Kevin';
$author = 'Freddy';  
ob_start();
include('email_text.php');
$output = ob_get_clean();
//$output now contains your email message with $name and $author substituted
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...