2016-09-06 37 views
-2

我知道是一个愚蠢的问题,但我很努力,但我无法弄清楚我错过了逗号我完全困惑,下面的代码给了我一个错误。与逗号在PHP中混淆

这将是巨大的,如果有人能帮助我,让我对他们逗号和技巧/窍门一个参考:)

我试图在不同的地方更换逗号但仍没有解决。

<td><?php echo <a href="test1.php?id=<?php echo $row['ID'];?>"/>Download! ?></a></td> 

谢谢:)

+1

与逗号(',')无关,与缺少引号('''和/或''')以及嵌套PHP标签无关。 –

+0

你会推荐我为这种情况做什么?Sir – user3184290

+1

ñ像这样:'​​Download'? – devpro

回答

1

它必须是:

<td> 
    <?php 
     echo '<a href="test1.php?id=' . $row['ID'] . '">Download!</a>'; 
    ?> 
</td> 

或者:

<td> 
    <a href="test1.php?id=<?=$row['ID']?>">Download!</a> 
</td> 
+0

非常感谢+1:D – user3184290

+0

短标签并不总是启用,我建议你坚持只使用'<?php echo'语法。 – Barmar

0
<td><a href="test1.php?id=<?php echo $row['ID'];?>"/>Download!</a></td> 

试试这个

0

要记住的一件重要的事情是,您不必使用echo来输出静态HTML内容,只能用于动态部分,即您的情况下的变量。正确的版本是这样的:

<td><a href="test1.php?id=<?php echo $row['ID'];?>"/>Download!</a></td> 
0

的直接方法通常会是:

<td><a href="test1.php?id=<?php echo $row['ID'];?>">Download!</a></td> 

通常,它可以缩短,这取决于你的PHP配置:

<td><a href="test1.php?id=<?= $row['ID'] ?>">Download!</a></td> 

对我来说,第二种形式更具可读性,因此我个人偏好。

0

有一个多余的echo开启/关闭php标签,你也错误地自我关闭a标签。

在HTML模板就足够了写:

<td> 
    <a href="test1.php?id=<?php echo $row['ID'];?>">Download!</a> 
</td> 

代码和?>之间<?php是php代码在HTML中是 “注入”。

$row是数组,并且使用$row['ID']您可以获得数组中的特定键值ID。您也可以使用双引号(如$row["ID"])访问该键上的值,因为您要访问由值为ID的字符串引用的键,所以没有区别。您可以用单引号或双引号括起字符串。 更多关于PHP手册中的字符串:http://php.net/manual/en/language.types.string.php

当你想使用字符串相同的报价,你必须逃脱它喜欢

<?php 
echo "This is double quote: \"."; //result: This is double quote: ". 
?> 

同一单引号:

<?php 
echo 'This is single quote: \'.'; //result: This is single quote: '. 
?> 

可以呼应一些其他字符串与数组中的值例如:

<?php echo "this row has id: " . $row["ID"]; ?> 

所以你用字符串和点连接字符串和值。

或者你可以在字符串变量访问的值,如:

<?php 
$rowId = 1; 
echo "this row has id: $rowId"; //result: this row has id: 1 
?> 

但它是很难发现它和许多的IDE不会高亮显示。可以更好地将它与期间连接(echo "this row has id: " . $rowId;)。

您也可以指定数组值,但你有{}附上它使PHP引擎知道这是数组变量没有字面

<?php echo "this row has id: {$row["ID"]}"; ?> 

或对象属性:

<?php echo "this row has id: {$row->id}"; ?> 

但是当你这样写时,也很难发现它。

当你想从字面上写这段代码,你可以用单引号括起来:

<?php 
echo '<?php echo "this row has id: {$row["ID"]}"; ?>'; //result: <?php echo "this row has id: {$row["ID"]}"; ?> 
?> 

或逃避所有双引号和美元符号$,其结果将是相同的:

<?php echo "<?php echo \"this row has id: {\$row[\"ID\"]}\"; ?>"; ?>