作者perfects1988 (LoserChan)
看板PHP
標題[請益] 有關函數變數和echo
時間Thu Nov 6 10:54:08 2014
如題
剛剛在跟著書上的範例作練習時
有一題讓我很不解
...
<head>
...
<?php
function square($a=2){
return $a*$a;
}
?>
</head>
<body>
<?php
$x=4;
$func="square";
echo "基底為$x"; //正確的出現基底為4
echo "$x的平方為:".$func($x)."<br/>"; //出現錯誤
//Notice: Undefined variable: x平方
echo "$x"."的平方為".$func($x)."<br/>"; //正確的出現4的平方為16
?>
</body>
我很疑惑的是:
"$x的平方為"
這段哪裡有錯?
而拆開又沒錯
謝謝大家!!!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.253.156.135
※ 文章網址: http://webptt.com/m.aspx?n=bbs/PHP/M.1415242451.A.A6D.html
※ 編輯: perfects1988 (111.253.156.135), 11/06/2014 10:54:56
1F:推 onininon: 我把你的程式碼拿去執行 沒有錯誤 11/06 11:32
2F:→ ahoo122002: 變數跟字串,是這樣嗎?(不確定,有請板上高手) 11/06 11:32
3F:→ onininon: 我記得""裡的變數要用{}包起來 11/06 11:36
4F:→ onininon: "{$x}的平方為:".$func($x)."<br/>" 這樣就對了 11/06 11:37
5F:推 crossdunk: 因為$x的平方為:被當作一個變數,但沒有所以是空值 11/06 11:41
6F:→ crossdunk: 或是可以變成"".$x."的平方為:".$func($x)."<br/>"; 11/06 11:44
7F:→ perfects1988: 感謝各位~~不過書中完全沒提到要用"{$x}"..... 11/06 11:47
8F:→ perfects1988: 我一直以為直接用"$x"就可以了= =.... 11/06 11:48
9F:→ perfects1988: 還有我的環境是用webmatrix~~~ 11/06 11:49
10F:→ MOONRAKER: 顯然現在 "..." 內取代 $ 變數名稱不限英文數字 11/06 15:15
11F:→ MOONRAKER: 安全的習慣是 "..." 內變數和訊息間留一個空格 11/06 15:15
12F:推 birkhofflee: 可以包,可以不包,不過原則上還是建議包起來 11/12 01:14