I have a code structure like this:
class myclass{
use App/classes/Log
public function myfunc1 () {
$log_obj = new Log;
$log_obj->log('something1');
}
public function myfunc2 () {
$log_obj = new Log;
$log_obj->log('something2');
}
public function myfunc3 () {
$log_obj = new Log;
$log_obj->log('something3');
}
}
In reality, I have 12 methods which I need to make a object of Log
class in the most of them. Now I want to know, isn't there any better approach to I do that (making an object) once? For example using a static
property and setting the object to it or whatever ..
You can assign the Log instance to a property of your myclass using __construct. Here's an example of accessing a method of a class inside another class:
class Test {
public $var = 'test';
public function show_var() {
echo $this->var;
}
}
class Test_2 {
protected $test;
public function __construct() {
$this->test = new Test;
}
public function show_test() {
$this->test->show_var();
}
}
$test_2 = new Test_2;
$test_2->show_test();
See here in action.