【问题标题】:having trouble breaking a youtube embed code up into variables无法将 youtube 嵌入代码分解为变量
【发布时间】:2012-01-30 07:29:20
【问题描述】:

我正在尝试使用基本的 youtube 嵌入代码并将其分解为高度宽度和 url 的变量,但我使用的代码不断抛出错误。

<?php
$width = "10";
$height = "20";
$vid url = "http://www.youtube.com/embed/HjgSmoilwV4";

echo '<iframe width="'$width'" height="'$height'" src="'$vid'" frameborder="0"allowfullscreen></iframe>';
?>

使用此代码我得到以下错误

解析错误:语法错误,第 4 行的 D:\webdesign\webserver\root\dynapage\scripts\admin\add_video.php 中出现意外的 T_STRING

我做错了什么?我用谷歌搜索并找到了关于逃跑的东西,但不确定它希望我逃跑什么。

【问题讨论】:

    标签: php youtube


    【解决方案1】:

    为了在字符串中使用变量,你需要在 PHP 中使用双引号。 所以如下:

    echo '<iframe width="'$width'" height="'$height'" src="'$vid_url'" frameborder="0"allowfullscreen></iframe>';
    

    应该是:

    echo "<iframe width='$width' height='$height' src='$vid_url' frameborder='0' allowfullscreen></iframe>";
    

    您收到语法错误,因为您使用了单引号,然后将它们结束,但后面仍有文本。您的示例代码也可以使用连接运算符. 编写:

    echo '<iframe width="' . $width . '" height="' . $height . '" src="' . $vid_url . '" frameborder="0"allowfullscreen></iframe>';
    

    【讨论】:

    • 我刚刚尝试过,它仍然抛出相同的错误也不是现在将我的变量视为文本而不是 php 导致代码高亮显示它与链接的其余部分相同
    • @user1121999 这是因为我使用了$vid 而不是$vid_url。这就是您在示例中所做的。我编辑了我的答案。现在应该可以工作了。
    【解决方案2】:
    <?php
    
    $width = '10';
    $height = '20';
    $vid_url = 'http://www.youtube.com/embed/HjgSmoilwV4';
    
    echo "<iframe width=\"$width\" height=\"$height\" src=\"$vid_url\" frameborder=\"0\" allowfullscreen></iframe>";
    
    ?>
    

    在 PHP 中使用双引号 (") 允许您按名称嵌入变量内容,因为脚本引擎会解析双引号字符串以获得已知模式。我将单引号替换为双引号,然后转义所有双引号引号。

    您的代码示例的主要问题是变量不能包含空格,因此我将您的空格替换为下划线。

    【讨论】:

      【解决方案3】:

      第 4 行 $vid url ,那里不能有那个空格,这是一个语法错误。 所以改成:

      $vid = "http://www.youtube.com/embed/HjgSmoilwV4";
      

      最后一行应该是:

      echo "<iframe width='".$width."' height='".$height."' src='".$vid."' frameborder='0' allowfullscreen></iframe>";
      

      【讨论】:

      • 我不知道那个网址发生了什么我要么不知道要么没看到它也感谢您的帮助我现在可以看到我如何处理这个 +1 代表
      • @vdbuilder Psh,他已经接受了我的。哦,好吧,你比我更需要代表:)
      【解决方案4】:

      您不能简单地将字符串与变量连接起来,方法是将它们放在源输入文件中彼此相邻的位置。相反,请使用 . 连接值:

      $ php
      <?php
      echo 'one' 'two';
      ?>
      PHP Parse error:  syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ',' or ';' in - on line 2
      $ php
      <?php
      echo 'one' . 'two';
      ?>
      onetwo$ 
      

      【讨论】:

        【解决方案5】:

        唯一缺少的连接 =]

        <?php
            $width = "10";
            $height = "20";
            $vid url = "http://www.youtube.com/embed/HjgSmoilwV4";
        
            echo '<iframe width="'.$width.'" height="'.$height.'" src="'.$vid.'" frameborder="0" allowfullscreen></iframe>';
        ?>
        

        有用的链接

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-03-27
          • 2012-01-22
          • 1970-01-01
          • 2012-08-03
          • 2015-03-02
          • 2017-01-05
          相关资源
          最近更新 更多