一个PHP命名空间的问题….很无语的问题…..
直接上点小代码
<br /><?php<br />//用来定义一个继承Smarty的子类,在构造函数中实现基本的路径配置.....<br />namespace Smarty;<br /><br />class Smarty_Test {<br /> function setName(){<br /> echo 'Name';<br /> }<br />}<br />
<br /><?php<br />use Smarty\Smarty_Test;<br /><br />$smarty = new Smarty_Test();<br />$smarty->assign('name','Ned');<br />$smarty->debugging = true;<br />$smarty->display('index.tpl');<br />?><br />
代码如上,很简单,两段代码的文件结构在同一个目录下
就这样,运行死活说找不到类……….
Fatal error: Class ‘Smarty
……本2文来源gaodai.ma#com搞##代!^码@网3
搞代gaodaima码
\Smarty_Test’ not found in …………
实在是没搞明白,我在ThinkPHP框架里也是使用命名空间完全没问题,怎么新建一个项目放连个文件,测试一下它死活都不行呢….连ZEND STUDIO编辑器都能显示出有存在Smarty_Test这个类,怎么运行的时候就是不行,,郁闷啊
——解决思路———————-
很不错LLL
——解决思路———————-
你没有加载含有 Smarty_Test 类定义的文件
——解决思路———————-
是的,include包含进来
或者设置自动加载
spl_autoload_register();<br />use Smarty\Smarty_Test;<br /> <br />$smarty = new Smarty_Test();<br />$smarty->assign('name','Ned');<br />$smarty->debugging = true;<br />$smarty->display('index.tpl');