是什么让这个PHP代码正在输出HTML?

时间:2016-04-20 20:45:24

标签: php

我尝试使用PHP输出一个按钮,但我似乎无法正确获取'"

这是我应该从下面的PHP代码获得的输出:

<button class="button button1" onclick="buttonTest(99.16918,-82.9191)"> Lithuania </button>    

这是我的代码:

foreach ($getClasses as $row){
echo '<button class="button button1" onclick="buttonTest(', $row->BUILDING_Latitude ,',',$row->BUILDING_Longtitude,)>', $row->COURSE_Title,'</button>';
}

如何让php输出上面的html代码我得到一个错误

syntax error, unexpected '>' (48) : eval()'d code

syntax error, unexpected ')', expecting ',' or ';' (48) : eval()'d code

更新

另外,请告诉我重写这个问题的最佳方法,以便将来不会发生这类问题。

1 个答案:

答案 0 :(得分:2)

你错过了'

tude, ')">', $ro
//----^-^

完整代码:

echo '<button class="button button1" onclick="buttonTest(', $row->BUILDING_Latitude ,',',$row->BUILDING_Longtitude, ')">', $row->COURSE_Title,'</button>';
//------------------------------------------------------------------------------------------------------------------^-^

我真的会这样写:

<?php
    foreach ($getClasses as $row) {
        echo "<button class=\"button button1\" onclick=\"buttonTest({$row->BUILDING_Latitude}, {$row->BUILDING_Longtitude})\">{$row->COURSE_Title}</button>";
    }

甚至更好:

<?php
    foreach ($getClasses as $row) {
        $lat = $row->BUILDING_Latitude;
        $lon = $row->BUILDING_Longtitude;
        $course = $row->COURSE_Title;
        echo "<button class=\"button button1\" onclick=\"buttonTest($lat, $lon)\">$course</button>";
    }