0

无论如何,我几乎觉得问这种基本问题很愚蠢。

我刚开始通过阅读一些书籍自学 php,在此之前我曾经从一个在线教程徘徊到另一个,我应该从非常基础的开始,但我首先深入研究 if else、foreach、while、数组等。

尽管抓住了这些概念,但我现在意识到很少有事情让我感到困惑。

所以我做了这个简单的练习,使用 ++ 打印出从 1 到 5 的数字,*= 乘以 2 的幂。

$i = 1;
echo $i.'-'.++$i.'-'.++$i.'-'.++$i.'-'.++$i;

看起来一切都很好,我的问题是为什么如果我现在回显 $i 它会返回 5?如果我想稍后重用它,是否必须将 1 重新分配给 $i ?

我尝试使用相同的模式来呼应 2 的幂,但我得到的只是第一个和最后一个乘法。

$p = 1;
echo $p .'-'.$p*= 2 .'-'.$p*= 2 .'-'.$p*= 2 .'-'.$p*= 2 .'-'.$p*= 2 .'-';

这是否意味着如果我使用组合运算符并且我必须回显每一行,我就不能使用连接?

请记住,我仅限于使用前两章中解释的内容。

4

2 回答 2

0

看起来你想要一个for循环。

$stringVar = "";
for($i=1;$i<6;$i++) {
    $stringVar .= "$i -";
}
echo $stringVar;

我会把第二个留给你作为练习。

于 2012-10-20T18:37:34.187 回答
0

一个简单的变量(比如你的 $i)存储一个数字

因此,如果您执行++$i,则执行与$i = $i +1相同的操作 ,这意味着您更改了变量的内容

$i = 1;
$i_originalValue = $i;
echo $i.'-'.++$i.'-'.++$i.'-'.++$i.'-'.++$i;
回声 $i; //打印 5
echo $i_originalValue; //打印 1

于 2012-10-20T18:38:56.437 回答