【问题标题】:PHP Shuffling and inside a PHPPHP Shuffle 和 PHP 内部
【发布时间】:2015-01-23 04:35:45
【问题描述】:

我在随机测验时遇到问题。有没有其他方法可以做到这一点?请多多包涵,我是 PHP 新手。

显示为以下错误:

解析错误:语法错误、意外的 '' (T_ENCAPSED_AND_WHITESPACE)、需要标识符 (T_STRING) 或变量 (T_VARIABLE) 或数字 (T_NUM_STRING)

有没有洗牌?

<?php

              $a="<tr><td >1. <input type='radio' name='answer' value='optiona' <?php if((strcmp(htmlspecialchars_decode($r1['answered'],ENT_QUOTES),'review')==0 ||strcmp(htmlspecialchars_decode($r1['answered'],ENT_QUOTES),'answered')==0)&& strcmp(htmlspecialchars_decode($r1['stdanswer'],ENT_QUOTES),'optiona')==0 ){echo 'checked';} ?>> <? php echo htmlspecialchars_decode($r['optiona'],ENT_QUOTES); ?></input></td></tr><br>"
              $b="<tr><td >2. <input type='radio' name='answer' value='optionb' <?php if((strcmp(htmlspecialchars_decode($r1['answered'],ENT_QUOTES),'review')==0 ||strcmp(htmlspecialchars_decode($r1['answered'],ENT_QUOTES),'answered')==0)&& strcmp(htmlspecialchars_decode($r1['stdanswer'],ENT_QUOTES),'optionb')==0 ){echo 'checked';} ?>> <?php echo htmlspecialchars_decode($r['optionb'],ENT_QUOTES); ?></input></td></tr><br>"
              $c="<tr><td >3. <input type='radio' name='answer' value='optionc' <?php if((strcmp(htmlspecialchars_decode($r1['answered'],ENT_QUOTES),'review')==0 ||strcmp(htmlspecialchars_decode($r1['answered'],ENT_QUOTES),'answered')==0)&& strcmp(htmlspecialchars_decode($r1['stdanswer'],ENT_QUOTES),'optionc')==0 ){echo 'checked';} ?>> <?php echo htmlspecialchars_decode($r['optionc'],ENT_QUOTES); ?></input></td></tr><br>"
              $d="<tr><td >4. <input type='radio' name='answer' value='optiond' <?php if((strcmp(htmlspecialchars_decode($r1['answered'],ENT_QUOTES),'review')==0 ||strcmp(htmlspecialchars_decode($r1['answered'],ENT_QUOTES),'answered')==0)&& strcmp(htmlspecialchars_decode($r1['stdanswer'],ENT_QUOTES),'optiond')==0 ){echo 'checked';} ?>> <?php echo htmlspecialchars_decode($r['optiond'],ENT_QUOTES); ?></input></td></tr>"

              $my_array = array($a,$b,$c,$d);

                shuffle($my_array);
                print_r($my_array[0].$my_array[1].$my_array[2].$my_array[3]);
              ?>

【问题讨论】:

  • 那里有一些错误。 $a、$b、$c、$d 中的每个字符串行都不以; 结尾。此外,&lt;?php 不接受双引号。
  • 还要好好看看语法高亮。并非所有这些字符串都是正确的字符串。在开始改组之前确保代码本身有效。
  • 你也在
  • @machineaddict 这绝对不是真的,您可以在双引号中使用 php。在这种情况下,我会先完全修复你的变量。删除其中的 php 内容。另外,如果您想 print_r 一个数组,只需执行 print_r($array);
  • @user3122479、can usenot accepted 是不同的句子。

标签: php html arrays variables html-table


【解决方案1】:
$a="<tr><td >1. <input type='radio' name='answer' value='optiona' <?php if((strcmp(htmlspecialchars_decode($r1['answered'],ENT_QUOTES),'review')==0 ||strcmp(htmlspecialchars_decode($r1['answered'],ENT_QUOTES),'answered')==0)&& strcmp(htmlspecialchars_decode($r1['stdanswer'],ENT_QUOTES),'optiona')==0 ){echo 'checked';} ?>><? php echo htmlspecialchars_decode($r['optiona'],ENT_QUOTES); ?></input></td></tr><br>";

尝试将其更改为:

$a = "<tr><td >1. <input type='radio' name='answer' value='optiona' ";

if((strcmp(htmlspecialchars_decode($r1['answered'],ENT_QUOTES),'review')==0 ||strcmp(htmlspecialchars_decode($r1['answered'],ENT_QUOTES),'answered')==0)&& strcmp(htmlspecialchars_decode($r1['stdanswer'],ENT_QUOTES),'optiona')==0 ){
    $a .= "'checked'";
}

$a .= '>'.htmlspecialchars_decode($r['optiona'],ENT_QUOTES)."</input></td></tr><br>";

在 PHP 中,.concatenation operator(将文本添加到字符串)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-07
    相关资源
    最近更新 更多