简体   繁体   English

php echo中的变量

[英]Variable in php echo

I would really need help with a primitive thing. 我真的需要原始事物的帮助。

I need this: 我需要这个:

<?php echo do_shortcode('[cycloneslider id="<?php $my_meta = get_post_meta($post->ID,'_my_meta',TRUE);
echo $my_meta['odkaz']; ?>"]'); ?>

I do not know how exactly do it. 我不知道该怎么做。 I made it by this solution: 我是通过以下解决方案实现的:

   <?php $my_meta = get_post_meta($post->ID,'_my_meta',TRUE);?> 
    <?php echo do_shortcode('[cycloneslider id="'.$my_meta['odkaz'].' "]'); ?>

Is it right or..Could you edit it to right way? 是正确的还是..您能以正确的方式对其进行编辑吗?

You can write it using a string interpolation : 您可以使用字符串插值来编写它:

<?php 
    $my_meta = get_post_meta($post->ID,'_my_meta',TRUE);
    echo do_shortcode("[cycloneslider id=\"{$my_meta['odkaz']}\"]"); 
?>

Or using a heredoc if extra spaces are ok: 或者,如果可以使用多余的空格,请使用heredoc

<?php 
    $my_meta = get_post_meta($post->ID,'_my_meta',TRUE);
    $shortcode = <<<TEXT
[cycloneslider id="{$my_meta['odkaz']}"]
TEXT;
    echo do_shortcode($shortcode); 
?>

Concatenate string and variables with the . 将字符串和变量与. operator: 操作员:

$var = "Hello, I am made up of " . $some . $variables . " and strings";

I suppose you don't see clear your own code. 我想您看不到自己的代码。
If that happens, then adopt a more verbose way of programming and create variables that describe more the values: 如果发生这种情况,请采用更详细的编程方式并创建描述更多值的变量:

<?php 

$my_meta = get_post_meta($post->ID,'_my_meta',TRUE);
$idCycloneSlider = $my_meta['odkaz'];
$doShortCodeResult = do_shortcode('[cycloneslider id="'.$idCycloneSlider.'"]');
echo $doShortCodeResult; 

?>

That way we see clearly what happens in each line and the string concatenation is more simple to do. 这样,我们可以清楚地看到每一行中发生了什么,并且字符串连接更容易实现。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM