php面向对象及tp框架初识,thinkphp面向对象的问题
TP框架分頁類里面 一開始的時候我看那里定義了一個私有屬性private?$url?????=?'';
我看下面有兩個地方用到了這個私有屬性
這個私有方法在這個show方法的上面??運行到這個私有方法時?$url這個屬性是空的啊?不會報錯嗎?
private?function?url($page){
return?str_replace(urlencode('[PAGE]'),?$page,?$this->url);
}
public?function?show()?{
if(0?==?$this->totalRows)?return?'';
$this->parameter[$this->p]?=?'[PAGE]';
$this->url?=?U(ACTION_NAME,?$this->parameter);
……
回復內容:
TP框架分頁類里面 一開始的時候我看那里定義了一個私有屬性private?$url?????=?'';
我看下面有兩個地方用到了這個私有屬性
這個私有方法在這個show方法的上面??運行到這個私有方法時?$url這個屬性是空的啊?不會報錯嗎?
private?function?url($page){
return?str_replace(urlencode('[PAGE]'),?$page,?$this->url);
}
public?function?show()?{
if(0?==?$this->totalRows)?return?'';
$this->parameter[$this->p]?=?'[PAGE]';
$this->url?=?U(ACTION_NAME,?$this->parameter);
……
你確定你了解編程嗎?
所有的函數存在定義和調用兩個過程,你看到的是兩個定義的過程。
定義過程中存在的對變量的使用并不是真的就使用了變量,使用變量是在調用的過程中。
所以定義的順序并不影響變量的值,又何來上面和下面之分。
str_replace 函數的描述上有句:該函數是二進制安全的。
二進制安全,在我理解上來說對輸入任何字節都能正確處理, 即使包含零值字節.題主也可以搜下二進制安全這個概念
你的url到底是私有屬性還是私有方法?
$this->url這個私有屬性在你的show方法里面定義了,不會是空的
這回答都是啥啊。。。暈,是程序員嗎?
首先他是類,你調用的也不是靜態函數,所以url在創建類實例的時候就初始化了,他就是'',空的字符串,不是沒有定義,是定義了但是是空的。所以不會有報錯。
本文原創發布php中文網,轉載請注明出處,感謝您的尊重!
總結
以上是生活随笔為你收集整理的php面向对象及tp框架初识,thinkphp面向对象的问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 没卡能取钱吗
- 下一篇: 助学贷款多久算逾期一次