发布网友 发布时间:2022-04-22 09:20
共5个回答
热心网友 时间:2023-06-23 15:42
一个非静态函数必须把类实例化后才能够被调用执行。
所以应该在类的外部 这样写
$instance = new Company();追问
报错了,大哥您办我看下
Parse error: syntax error, unexpected T_VARIABLE in E:\web\basic\index1.php on line 10
正确的写法应该是这样的:
<?php类的内部只能有方法,也就是说累的内部只能有方法和构造函数。所以你不能有非方法的非静态代码块。
而且推荐用get 或者 set 方法去操作属性,所以应该是set 和 get 方法成对出现的,当然可以由魔术函数替代
热心网友 时间:2023-06-23 15:43
$company=new Company;
echo $company->getname();
想在外调用类的方法时就得先申明类,然后调用,
如想在内里面调用方法的话
$this->getname();
热心网友 时间:2023-06-23 15:43
内部调用 $this->$hello
self::$hello
外部调用 class名::$hello
热心网友 时间:2023-06-23 15:44
步骤如下:
class.php
-------------------------
<?php
class Test{
function a(){
//xxxxx
}
}
function.php
------------------------------------------
<?php
require_once('class.php');//引入类所在文件
function b(){
$test = new Test(); //初始化类实例
$test->a();//调用类中的a方法
}
祝你好运
热心网友 时间:2023-06-23 15:44
你可以试试这样在类内调用函数
$name = $this->getname();简单说就是$this->加函数名