我的php测试脚本中有以下变量:
$url="http://example.com";
$uri="/index.php";
$url="$url$uri";
echo $url;
这返回两个变量$url和$uri的值,得到的结果是:
http://example.com/index.php
我的问题是:如果php从上到下处理变量,为什么"echo$url"不显示第一个变量的值http://example.com"?
在这种情况下,我怎样才能回应第一个变量的值?我需要将第一个变量从上到中移动吗?:
$uri="/index.php";
$url="$url$uri";
$url="http://example.com";
echo $url;
有什么想法吗?
php中变量的顺序重要吗?
语句的顺序是。PHP按照你告诉它的顺序做事。
如果php从上到下处理变量,那么为什么"echo$url"不显示第一个变量的值
确实如此。只是这个变量不再有你在第1行给它的值,因为你在第3行给了它一个新值。
在这种情况下,我怎样才能回应第一个变量的值?
有很多方法可以做到这一点…
我需要将第一个变量从顶部移动到中间吗?
…会这样做,但会使$url="$url$uri";
线变得毫无意义。
你需要退一步思考你真正想要实现的目标。
如果您需要将站点根的URL保持在附近,并且在某个地方可以使用组合的URL,那么引入第三个变量名称可能是前进的方向。
如果您只是在调试,并且希望在更改$url
的值之前确保其正确,那么您可能应该移动echo
语句。