php返回函数字符串
首先,我为我的英语感到抱歉 我在Wordpress中返回函数结果(字符串)时遇到问题 这是我的PHP代码php返回函数字符串,php,wordpress,Php,Wordpress,首先,我为我的英语感到抱歉 我在Wordpress中返回函数结果(字符串)时遇到问题 这是我的PHP代码 <?php function printItem($item){ $r = '<td><a href="#" class="tooltips" title="'; $r.= "Nazwa kanału: <b>". $item->nazwa_kanalu."</b><br>\n";
<?php
function printItem($item){
$r = '<td><a href="#" class="tooltips" title="';
$r.= "Nazwa kanału: <b>". $item->nazwa_kanalu."</b><br>\n";
$r.= "Język: <b>".$item->jezyk."</b><br>\n";
$r.= "Napisy: <b>".$item->napisy."</b><br>";
$r.= "Dzwięk: <b>".$item->dzwiek."</b><br>";
$r.= "Obraz: <b>".$item->obraz."</b><br>";
$r.= "Rodziaj: <b>".$item->rodzaj."</b><br>";
$r.= "Dostępny w: <b>".$item->pakiety."</b><br>";
$r.= '"><img src="'.$item->field_logo_fid.'"></a></td>';
return $r;
}
function printJambox($pakiet,$row=7){
$r = '<table>'."\n";
foreach( JamboxChannelsByRows($pakiet,$row) as $v ){
$r.= "<tr>\n";
foreach ($v as $item){
$r.= printItem($item);
}
for ($i=0;$i<($row-sizeof($v));$i++){
$r.= "<td> </td>\n";
}
$r.= "</tr>\n";
}
$r.= "</table>\n";
return $r;
}
function JamboxChannelsByRows($pakiet,$row=7)
{
$xml = simplexml_load_file('http://www.jambox.pl/xml/listakanalow.xml');
$result = Array();
$rowArray = Array();
foreach($xml -> node as $item)
{ echo $item;
if( strstr($item->pakiety,$pakiet))
{
if (sizeof($rowArray) < $row){
$rowArray[] = $item;
}
if (sizeof($rowArray) == $row){
$result[] = $rowArray;
$rowArray = Array();
}
}
}
if ( sizeof($rowArray) != 0 ){
$result[] = $rowArray;
}
return $result;
}
//[foobar]
function jambox_func( $atts ){
return printJambox($atts['pakiet'],$atts['row']);
}
add_shortcode( 'jambox', 'jambox_func' );
?>
当我只返回printJambox($atts['pakiet',$atts['row'])强>
我的结果是这样的(问题在于标签)
Napisy:Dzwięk:StereoObraz:SD 16:9
Rodziaj:rozrywka
Dostępny w:Start HD、Mikro HD、Mini HD、Wielotematyczny HD、Wielotematyczny Super HD、Wielotematyczny Mega HD
但当我把返回值改为echo时
<img src="https://www.jambox.pl/sites/default/files/tvlogo/tv6hd.png">
结果总是显示在我网站的顶部
有人能解释一下发生了什么吗?你能给我们看一下你也叫printJambox的代码吗?我在这里叫它:函数jambox_func($atts){返回printJambox($atts['pakiet',$atts['row']);}听起来好像它被返回时正在被过滤器或其他东西处理。你在内容上有任何类型的过滤器吗?没有,没有过滤器。你能给我们看看你调用printJambox的地方的代码吗?我在这里调用它:函数jambox_func($atts){return printJambox($atts['pakiet'],$atts['row'])}听起来好像当它被返回时,它正在被过滤器或其他东西处理。您在内容上有任何类型的过滤器吗?没有,没有过滤器。
<img src="https://www.jambox.pl/sites/default/files/tvlogo/tv6hd.png">