2016-12-13 5 views
1

私はPHPで非常に新しく、コンテンツの中に何度もエコーを残すというコードを書いています。ここに私のコードです。私はこの混乱コードの短いPHPコードが必要です。誰でも私を助けることができますか?

<?php $bob = 'my name is bob and I am'; ?> 
<p><?php echo ($bob); ?> bad, <?php echo ($bob); ?> Good, <?php echo ($bob); ?> Awesome, <?php echo ($bob); ?> LOL, <?php echo ($bob); ?> Expert, <?php echo ($bob); ?> Great!</p> 

ここで、このコードを書く良い方法を知りたいと思います。完璧な作業です。しかし、ここでは、このコードをより短く、よりスタンダードにする方法がたくさんあると思います。このコンテンツに同じ<?php echo ($bob); ?>を使用したくありません。

このコードを短くして完成させる方法はありますか?

あなたは配列のこのような使用することができますおかげ

+0

形容詞の配列を使用してループします。 – JimL

+0

指定されたアンサーのいずれかがあなたの問題を解決しましたか?そうなら、それに印をつけます。彼らが役に立つのであれば、少なくとも票を立てるのは難しいでしょう。 – Xorifelse

答えて

1

$list = ['bad', 'good', 'awesome', 'etc']; 

foreach($list as $value){ 
    echo "my name is bob and I am $value, "; 
} 

代わりのデータを直接エコーを、あなたにも、あなたが簡単にtrim不要な文字をすることができますので、変数に格納することができます。

$str = ''; 
foreach($list as $value){ 
    $str .= "my name is bob and I am $value, "; 
} 

echo "<p>".trim($str, ', ')."</p>"; 

代わりにあなたはまた、あなたの例のようにHTMLコンテンツにあなたの変数を注入するための便利な方法を与える、PHPのテンプレートの電源を使用したい場合がありimplode

echo '<p>' . trim(implode(', my name is bob and I am ', $list), ', ') . '</p>'; 
+0

旧バージョンのPHPで動作しますか? –

+0

PHPのバージョンが<'5.4'の場合、' array( 'bad'、 'good'、 'awesome'、 'etc');を使用するか更新を検討してください。 – Xorifelse

0
$categ_list= array('bad', 'good', 'awesome', 'etc'); 
foreach($categ_list as $categ){ 
    echo "my name is bob and I am $categ, "; 
} 
0

を使用することができます:

<?php 
    $bob = 'my name is bob and I am'; 
?> 

<!DOCTYPE html> 
<html> 
    <head> 
    <title></title> 
    <meta charset="utf-8" /> 
</head> 
<body> 
    <p> 
     <? if(isset($bob)): ?> 
      <?= $bob ?> bad, <?= $bob ?> good, <?= $bob ?> Awesome 
     <? endif ?> 
    </p> 
</body> 

if文を追加して、テンプレート構文によってデータを検証することもできます。 PhP Syntax alternative page hereに関するさらに詳しい情報。

echo echo shorthand feature is enabled by default on v5.4ながら、あなたはshort_open_tagを検索して、それを有効にするには、php.iniファイルを設定する必要があります。

+0

実際には、 '<?='は5.4では有効になっており、無効にすることはできません。あなたが参照しているタグは '<? ' – Xorifelse

+0

私はWordPressで使用します。だから私はWordpressが標準としてショートハンドタグをサポートしていないと思います。 –

+0

@Xorifelse '<?=これはドキュメントからshort_open_tag php.iniオプションに関係なく常に利用可能です。 ' '<? 'はまだ別のものだと思いますが、この機能についてのドキュメントはまだ見つかりませんでした。 –

0
$iam = 'my name is bob and I am'; 
$props = ['bad', 'good', 'awesome', 'expert', 'great']; 
echo "<p>$iam ", implode(", {$iam} ", $props), '</p>'; 
関連する問題