0

例如链接;

http://example.com/cast?Channel=STACKo

通道数据.php;

 $STACKo_YAYIN = 'overflow';

索引.php;

  include '/***/Library/ChannelDatas.php';

  158 $_GET['Channel'] . '_YAYIN' = $insalik;
  159 $url = 'http://example.com/data/'.$insalik.'.info/weekly_'.$insalik.'.info_tvprofil.net.xml';

目标打印:

$url = 'http://example.com/data/overflow.info/weekly_overflow.info_tvprofil.net.xml'

错误页面:

 <b>Parse error</b>:  syntax error, unexpected '=' in <b>/***/v1/Index.php</b> on line <b>158</b><br />

怎么了?谢谢!

4

7 回答 7

1

我想你需要这样

$insalik = $_GET['Channel'] . '_YAYIN';

您正在使用$insalikfor $url。因此,您需要将该值分配给$insalik。您将其反转。

于 2013-10-24T07:22:44.473 回答
0

坏事从这里开始:

通道数据.php;

$STACKo_YAYIN = 'overflow';

这应该是:

$YAYIN = array(
    "STACKo" => 'overflow',
);

然后访问很容易:

if (isset($YAYIN[$_GET['channel']]) {
    $url = 'http://example.com/data/'.$YAYIN[$_GET['channel']].'.info/weekly_'.$YAYIN[$_GET['channel']].'.info_tvprofil.net.xml';
} else {
    // what if there is no value for the channel?
}
于 2013-10-24T08:23:25.043 回答
0

你应该$STACKo_YAYIN这样引用:

$STACKo_YAYIN = 'overflow';
$insalik = ${$_GET['Channel'] . '_YAYIN'};
$url = 'http://example.com/data/'.$insalik.'.info/weekly_'.$insalik.'.info_tvprofil.net.xml';
于 2013-10-24T07:31:48.483 回答
-1

$_GET['Channel'] . '_YAYIN'是一个字符串。您不能将 ( =) 值分配给字符串。你需要它的另一种方式(将此字符串分配给一个变量)

或者可能${$_GET['Channel'] . '_YAYIN'} = $insalik

于 2013-10-24T07:24:57.237 回答
-1

您需要使用变量变量:

$insalik = ${$_GET['Channel'].'_YAYIN'};

http://php.net/manual/en/language.variables.variable.php

于 2013-10-24T07:25:05.313 回答
-1

尝试参考变量

$temp = $_GET['Channel'] . '_YAYIN';
$insalik = $$temp;
于 2013-10-24T07:26:42.520 回答
-1

使用以下

$_GET['Channel'] = '_YAYIN'.$insalik;
于 2013-10-24T07:24:07.860 回答