标签:php oop global-variables class data-access
考虑以下情况
文件:./ include / functions / table-config.php
含:
. . $tablePages = 'orweb_pages'; . .
file:./ include / classes /uri-resolve.php
含:
class URIResolve { . . $category = null ; . . function process_uri() { ... $this->category = $tablePages; ... } . . }
文件:./ settings.php
含:
. . require_once(ABSPATH.INC.FUNC.'/table-config.php'); require_once(ABSPATH.INC.CLASS.'/uri-resolve.php'); . .
这会有用吗我的意思是从process_uri()访问$tablePages是可以接受的,还是会给出错误的结果.
如果可能发生错误,请建议更正或解决方法.
解决方法:
使用全局(不推荐),常量或单例配置类.
简单地包括
$tablePages = 'orweb_pages';
将给出您的变量局部范围,以便它在其他类中不可见.如果使用常量:
define('TABLE_PAGES', 'orweb_pages');
无论范围如何,TABLE_PAGES都可用于整个应用程序的读访问.
常量超过全局变量的优点是您不必担心它在应用程序的其他区域被覆盖.
标签:php,oop,global-variables,class,data-access 来源: https://codeday.me/bug/20190716/1473347.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。