当前位置:编程学习 > php >>

php一个关于类的基础问题

include_once("mysql.class.php");//引入一个类 $db=new mysql("localhost","root","","test","GBK");//实例化对象 function test(){ //自定义一个函数 $sql="SELECT * FROM user"; $query=$db->query($sql);//在自定义函数中使用这个对象,这里有错,正确的应该怎么写呢? $result=$db->fetch_array($query); echo $result['user_name']; } test(); 直接在函数里面用$db对象的话,会报错,变量db未定义,这个在函数里面应该怎么用呢?
追问:非常感谢你的回答.还有一个疑问:这个$db应该已经是全局变量了吧,为什么还要在函数中用global呢?我的意思是实例化类的这个$db=new mysql("localhost","root","","test","GBK");不是全局的吗,为什么在函数中不能直接使用?
答案:在$sql="SELECT * FROM user";的上面加global $db;意思是$db是全局变量。
修改后,是这样的:
function test(){        //自定义一个函数
	global $db;
	$sql="SELECT * FROM user";
	$query=$db->query($sql);//在自定义函数中使用这个对象,这里有错,正确的应该怎么写呢?
	$result=$db->fetch_array($query);
	echo $result['user_name'];
 }
其他:对你的追问回答

函数里面的变量是私有的,只能在这个函数里面使用。但是你function test()这里的$db确用到了外面的。 2.第一个函数里的string string又是什么意思?问题补充: 3.两个函数中1、int,bool是指函数的返回值类型。 2、第一个string是参数类型,第二个 你这个还是写在一个类里面的 不是那么$db怎么使全局变量呢 

上一个:php写入数据到php文件第2行 以及更改第3行数据 会的来
下一个:php如何获取文件内容?

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,