php
2017-11-25 12 views 0 likes 
0
私は

約単純な変数のために置き換えるアシスタントに必要な

:配列キーで可変であり、

値ことを知っ

$html = '<{$headtype} class="{$class}">{$text}</{$headtype}>'; 
$array['headtype'] = 'h1'; 
$array['class']  = 'classname'; 
$array['text']  = 'the title'; 
// result 
<h1 class="classname">the title</h1> 

答えて

0
$array['headtype'] = 'h1'; 
$array['class']  = 'classname'; 
$array['text']  = 'the title'; 
extract($array) 
$html = '<{$headtype} class="{$class}">{$text}</{$headtype}>'; 

、私は右の質問を取得する場合、あなたが望むものです。以下にコメントしてください。私はあなたが望むように私の答えを更新します。

+1

これは本当に質問に答えていません。文字列の中でそれらを置き換える必要があります(OPが実際に求めているものです)。文字列内の変数を解決しようとする場合は、文字列を二重引用符で囲む必要があります。 –

+0

あなたの返事ありがとう、私は数分で私の答えを更新します。 – geekido

+1

変数スコープを混乱させ、望ましくない結果になる可能性がある(スコープにすでにそれらの変数が含まれている)ので、 'extract()'を使用することもお勧めします。 –

0

このように配列キーと古いキーを設定解除するように設定することができます。 $arr[$newkey] = $arr[$oldkey]; unset($arr[$oldkey]); 詳細情報は以下の記事で確認できます。 change the key of an array element

1

だけ配列を反復処理し、文字列を置き換えるためにstr_replace()を使用します。

foreach ($array as $key => $value) { 
    $html = str_replace('{$'.$key.'}', $value, $html); 
} 

デモ:https://3v4l.org/PceWI

関連する問題