Re: [請益] 一些觀念釐清
※ 引述《p52189 (皮爺)》之銘言:
: function A (String,String,int)
: function A (String,int,int)
:
: 沒有明顯型別限制的話怎麼區別它們呢?
: 我之前好像看過有人這樣寫
:
: function X ($vara = '')
:
: 這樣是不是表示限制?
php 裡面沒有重載(overload)
你只能宣告 function A (var1, var2, var3) {
// 如果你依舊想寫成 overload 的話
if (is_int(var2)) { A2(); }
// etc...
}
php 只認得一個同名的 A function,其他不管參數數一不一樣,都會跳重複定義的錯誤
: 另外
:
: $a = $b;
:
: 這時候a、b皆是指向同一個實體嗎?
:
: ↑這部分超搞混
:
array 的話在 PHP5 裡面直接用 $a = $b 是指向同個實體
(印象中,有錯請指正。我只依稀記得 PHP4 跟 PHP5 不一樣)
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
推
02/15 09:10,
02/15 09:10
↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑
:
: 更搞混的還有...
:
: 請問以下變數作用範圍是?
:
: {$a}
個人沒寫過這種寫法,估計只有在 "{$a}",雙引號內部出現,
:
: function A(){$a}
local
:
: while(true){$a}
global
:
: 我知道一般寫在最外頭的變數好像強到可以跨過不同的指令稿
:
: 所以會讓多個頁面利用include同一指令稿的方式共用變數
:
: 但所謂的共用,這些變數是屬於同一個Request嗎?
:
如果你指的同個 request = 同個 client 的 同個 connection 的話
那麼,是的。
: 比如有一組頁面
:
: page_one.php
:
: page_two.php
:
: page_three.php
:
: 它們皆 include 一個 global.php,global.php 內含一個 $my_var
:
: 王小明透過瀏覽器觀看 page_one.php
:
: 陳小華透過瀏覽器觀看 page_two.php
:
: 假設兩個頁面會分別對 $my_var做操作,值會不同
:
會
: 那他們得到的 $my_var 結果會一樣嗎?
:
不會
PHP 中沒有 ASP 的 Application 全域系統變數,
生命週期就只有 client 開始連線到結束。
(當然你可以用寫檔/share momery的方式來弄一個跟 ASP Application 變數一樣)
($_SESSION 存在主機上,看你設定多久,
$_COOKIE 在 client 上,一樣看你的 expire time,其他變數幾乎都是執行完就死了)
: 還是說共用僅止於小明本人?
:
不考慮上述的 Application 變數的話
小明的變數僅小明
小華的變數僅小華
:
: 問得很支離破碎抱歉...因為我也不是很清楚問題長什麼樣子,具體有哪些問題等等
:
: 如果清楚問題的話也許自己就可以解決了冏
: ※ 編輯: p52189 來自: 114.42.225.45 (02/14 21:39)
: → tyf99:不同 client 的變數是分開的,因為是不同的 php thread 02/14 23:48
: → tyf99:不同 thread 的變數要互通,就要透過 shared memory 02/14 23:49
: → tyf99:變數的生命期,一般來說最長的是$_SESSION,然後才是global 02/14 23:51
: → tyf99:不過一般不會用 shared memory,難寫,透過資料庫比較簡單 02/14 23:53
memcache 是個好方法!(但還是要稍微搭配資料庫做紀錄)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 219.85.64.11
推
02/15 07:31, , 1F
02/15 07:31, 1F
→
02/15 07:33, , 2F
02/15 07:33, 2F
→
02/15 07:33, , 3F
02/15 07:33, 3F
→
02/15 08:34, , 4F
02/15 08:34, 4F
推
02/15 09:10, , 5F
02/15 09:10, 5F
推
02/15 09:11, , 6F
02/15 09:11, 6F
→
02/15 09:12, , 7F
02/15 09:12, 7F
→
02/15 09:12, , 8F
02/15 09:12, 8F
→
02/15 09:13, , 9F
02/15 09:13, 9F
推
02/15 10:53, , 10F
02/15 10:53, 10F
把樓上板友 array = 的定義放到文章內。
※ 編輯: chrisQQ 來自: 219.85.64.11 (02/15 17:13)
推
02/16 00:47, , 11F
02/16 00:47, 11F
討論串 (同標題文章)
PHP 近期熱門文章
PTT數位生活區 即時熱門文章