翻译yagendoo的复杂php代码

翻译yagendoo的复杂php代码,php,Php,此代码来自Yagendoo套件和Joomla的插件,用于Eshops。 这是我第一次看到这样的东西,我不知道怎么称呼它,在谷歌搜索了5个小时后,我什么也没找到。尽管从我的理解来看,$YAGDRODUCT是一个全局类var,类中还有许多其他变量。echo发布了4个html div。我想删除其中的2个,所以我需要一些如何翻译得到回响的变量,并获得其值,以便我可以编辑它 我试过这个: <?php if( !empty($YagProduct->prices->salesPrice)

此代码来自Yagendoo套件和Joomla的插件,用于Eshops。 这是我第一次看到这样的东西,我不知道怎么称呼它,在谷歌搜索了5个小时后,我什么也没找到。尽管从我的理解来看,$YAGDRODUCT是一个全局类var,类中还有许多其他变量。echo发布了4个html div。我想删除其中的2个,所以我需要一些如何翻译得到回响的变量,并获得其值,以便我可以编辑它

我试过这个:

<?php if( !empty($YagProduct->prices->salesPrice) ) :   ?>
<?php echo YagendooTmplGlobal::getProductPriceHtml($YagProduct); ?>

没有结果。有人知道怎么翻译吗

检查元件:

<?php 
$testvar= YagendooTmplGlobal::getProductPriceHtml($YagProduct);
print_r($testvar);
die();
?>

php:


可能是
$testvar
为空,在这种情况下,print\r将不会显示任何内容,因此页面将消失(),而不会显示任何内容

请尝试使用var_dump()对其进行回显,如下所示:

因为数字和符号之间有一个空格。因此,在从阵列中消除时必须小心

$exploded = Array
(
    [0] => 50,00
    [1] => EUR
    [2] => 25,00
    [3] => EUR
    [4] => 82,90
    [5] => EUR
    [6] => 9,35
    [7] => EUR
    [8] => 40,65
    [9] => EUR
)
这将取消位置4、5、8和9的设置,因此您将删除数字和符号。 在这之后你只需要内爆

unset($exploded[4]);
unset($exploded[5]);
unset($exploded[8]);
unset($exploded[9]);

然后,
echo$内爆将产生:50,00欧元25,00欧元9,35欧元

我也使用了它,我得到了这个:string(44)”,所以你得到了一个44个字符的字符串和一个空格。。。getProductPriceHtml返回什么类型的值?好的,我在php代码的末尾使用了它,我得到了以下结果:字符串(624)“50,00β-25,00β-82,90β-9,35β-40,65β-”这些是div的值,每个div显示一个值,然后关闭。尽管我现在如何编辑它来删除和删除5个值中的3个?我真的不知道这个β符号是什么,但是你可以用正则表达式预匹配字符串。。。但首先你必须找出这个符号是什么,它们是价值:50,00欧元25,00欧元82,90欧元9,35欧元40,65欧元,所以它是欧元的符号
<?php 
  $testvar= YagendooTmplGlobal::getProductPriceHtml($YagProduct);
  var_dump($testvar);
  die();
?>
$exploded = Array
(
    [0] => 50,00
    [1] => EUR
    [2] => 25,00
    [3] => EUR
    [4] => 82,90
    [5] => EUR
    [6] => 9,35
    [7] => EUR
    [8] => 40,65
    [9] => EUR
)
unset($exploded[4]);
unset($exploded[5]);
unset($exploded[8]);
unset($exploded[9]);
$imploded = implode(' ', $exploded);