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面向对象的问题相关推荐

  1. php tp框架选择题,thinkPHP框架单元测试库tpunit用法示例

    本文实例讲述了thinkPHP框架单元测试库tpunit用法.分享给大家供大家参考,具体如下: thinkphp本身并没有提供相应的单元测试支持,所以这里介绍一个可以对tp进行单元测试的库tpunit ...

  2. Laravel框架与ThinkPHP框架的区别

    TP框架: ThinkPHP简单.快速,基于MVC和面向对象,易用性较高,是一款简洁实用的轻量级框架. Laravel框架: Lavavel一直秉承着优雅的原则,很好的支持了composer(tp6. ...

  3. 【PHP代码审计】TP框架初次了解学习

    文章目录 TP框架介绍 TP框架审计要点 TP框架文件目录 TP框架入口目录 TP框架路由写法 TP框架调试模式 TP框架介绍 ThinkPHP是为了简化企业级应用开发和敏捷WEB应用开发而诞生的.最 ...

  4. tp框架中引入php文件,Laravel框架及ThinkPHP框架超级简单的公共文件引入(保留变量)...

    为什么要把两个框架放在一起来说呢?额...因为TP5.1.x与Laravel实在是太像了,本文主要讲述关于大家顶部及底部文件引入的问题. 但是如果顶部和尾部只是单纯的html代码还好说,但是里面通常有 ...

  5. 面向对象的JavaScript框架 MooTools

    MooTools是一个简洁,模块化,面向对象的JavaScript框架.它能够帮助你更快,更简单地编写可扩展和兼容性强的JavaScript代 码. Mootools从Prototype.js中汲取了 ...

  6. java基础知识总结:基础知识、面向对象、集合框架、多线程、jdk1.5新特性、IO流、网络编程

    目录 一.基础知识: 二.面向对象 三.集合框架 四.多线程: 五.jdk1.5的新特性 六.IO流 七.网络编程: 一.基础知识: 1.JVM.JRE和JDK的区别: JVM(Java Virtua ...

  7. 从零开始了解thinkphp框架,tp框架基础教程

    工作很长时间没有用到thinkphp框架了,差不多都要忘干净了,今天就重温一下tp框架. 首先要下载thinkphp最新版本3.2.2版本,下载地址http://www.thinkphp.cn/don ...

  8. Laravel框架与ThinkPHP一些不同点

    此文参考链接:点这里 首先这两个框架其实都接触过,不过用的thinkphp较多,而自己也没好好总结过,今天看了一篇文章感觉不错,写的是一些关于两个框架之间使用的不同 1.渲染模板方式的不同: lara ...

  9. think php框架案例,ThinkPHP框架设计及扩展详解

    ThinkPHP框架是国内知名度很高应用很广泛的php框架,我们从一些简单的开发示例中来深入了解一下这个框架给我们带来的开发便捷性,以及游刃有余的扩展设计.同时也从源码分析的角度看看框架的一些不足,尽 ...

最新文章

  1. V​M​W​a​r​e​里​安​装​6​4​位​L​i​n​u​x​ ​的​方​法
  2. IIS/ Apache+PHP+MySQL+ Zend Optimizer完全安装手册
  3. mysql 分页优化策略(一)
  4. Parcelbale接口
  5. Jsp基本page指令、注释、方法声明,书写规范及注意事项
  6. smtp、esmtp、pop3命令使用
  7. 威联通212P 在admin用户密码正确情况下仍然无法登录WEB页面解决办法
  8. ue4 4.27源码下载
  9. Zipf,Power-laws,Pareto分布
  10. Win10菜单栏卡顿无响应的解决方法
  11. 核心交换机与普通交换机的区别
  12. c语言实现皇帝翻牌游戏
  13. 关于站内信的开发思路
  14. DeskMini310 黑苹果(hackintosh)
  15. Proxmox VE(PVE)+ceph+物理网络规划-超融合生产环境安装部署案例
  16. sed命令在Mac OS X上出现“未定义标签”错误
  17. 致曾经那个优秀的女孩儿
  18. java 浮雕效果_android 图像处理(黑白,模糊,浮雕,圆角,镜像,底片,油画,灰白,加旧,哈哈镜,放大镜)...
  19. Ubuntu2004系统下佳能MG2400打印机无响应
  20. DFT(离散傅里叶变换)

热门文章

  1. web前端教程之JavaScript的作用域
  2. 人们把通信技术计算机技术控制技术合称为,湖北汽车工业学院大学计算机基础复习题(费劲整理,带答案,考试命中概率很大).docx...
  3. java 中的vector_详解Java中的Vector
  4. Mac 下变更pip源
  5. VTK:vtkCubeAxesActor用法实战
  6. wxWidgets:wxToolbook类用法
  7. boost::mpl模块实现identity相关的测试程序
  8. boost::hana::detail::fast_and用法的测试程序
  9. boost::is_straight_line_drawing用法的测试程序
  10. boost::shared_ptr用法测试程序