将HTML输入ID转换为PHP

时间:2014-02-03 11:29:48

标签: php html

我正在尝试将以下html转换为php,以便我可以在我正在处理的脚本中使用。我不确定我是否正确编写了PHP,因此我想查看是否有人可以发现任何错误。

这里是html:

<section class="ac-container">
            <div>
                <input id="ac-1" name="accordion-1" type="radio" checked />
                <label for="ac-1">About us</label>
                <article class="ac-small">
                    <p>My Content goes here</p>
                </article>

这是PHP块:

 $x =1;
 echo '<section class=\"ac-container>\"';
 echo '<input id=\"ac-'$x'\"' . '' . 'name=\"accordion-1' . '' . 'type=\"radio\"' .
 'checked'.'>';
 echo '<div>';
 echo '<label for=\"ac-\"'. $x .'\"'.'>';
 echo '<h2>'.strtoupper(str_replace("_", " ",($k))).' ' . 'DEALS'.'</h2>';
 echo '</label>';
 echo '<article class=\"ac-large\">';
 echo '<p>';
 echo '</p>';
 echo '</article>';
 echo '</div>';
 echo '</section>';
 $x++;

我认为具体问题是以下几行,我认为我没有正确格式化$ x?

 echo '<input id=\"ac-'$x'\"' . '' . 'name=\"accordion-1' . '' . 'type=\"radio\"' .
 'checked'.'>;

 echo '<label for=\"ac-\"'. $x .'\"'.'>';

感谢任何帮助。

干杯 Volterony

3 个答案:

答案 0 :(得分:0)

请勿使用带双引号的反斜杠。

示例:

echo '<section class="ac-container">';
//....

答案 1 :(得分:0)

还有一些额外的和缺失的双引号。我试图解决所有问题。请尝试以下代码

 $x =1;
 echo '<section class="ac-container">';
 echo '<input id="ac-'.$x.'" name="accordion-1" type="radio" checked>';
 echo '<div>';
 echo '<label for="ac-'. $x .'"'.'>';
 echo '<h2>'.strtoupper(str_replace("_", " ",($k))).' ' . 'DEALS'.'</h2>';
 echo '</label>';
 echo '<article class="ac-large">';
 echo '<p>';
 echo '</p>';
 echo '</article>';
 echo '</div>';
 echo '</section>';
 $x++;

答案 2 :(得分:0)

正如您已经注意到的,这种技术会导致无法读取的代码,这将是一场巨大的维护噩梦。

php可以很容易地分离逻辑和演示文稿,至少你可以做这样的事情(只是一个例子,不确定我是否100%复制你的意图):

<?php
    $mytitle = strtoupper(str_replace("_", " ",$k));
    $x=1;
    $mycontent = 'My Content goes here';
?>

<section class="ac-<?php echo $x; ?>">
<div>
<input id="ac-1" name="accordion-1" type="radio" checked />
<label for="ac-1"><?php echo $mytitle; ?> DEALS</label>
<article class="ac-small">
<p><? echo $mycontent; >?</p>
</article>

你会注意到,这是一个不那么具有侵入性的内容,而且HTML中的PHP更少,因此更具可读性。