Php 如何获取方法调用所源自的类的名称
如何获取方法调用所源自的类的名称。 乙二醇 这个问题将帮助我解决这个问题 请检查一下,帮我解决Php 如何获取方法调用所源自的类的名称,php,codeigniter,Php,Codeigniter,如何获取方法调用所源自的类的名称。 乙二醇 这个问题将帮助我解决这个问题 请检查一下,帮我解决 如何让其他类知道请求来自某个类?您的意思是获取父类名称吗?使用 但是父类必须由子类扩展。我不知道这在CodeIgnitor的情况下是否也有用,但在php中有一个名为的函数可以完成以下任务: class Animal { public function eat($food) { echo "Animal is eating : " . $food; $tree =
如何让其他类知道请求来自某个类?您的意思是获取父类名称吗?使用
但是父类必须由子类扩展。我不知道这在CodeIgnitor的情况下是否也有用,但在php中有一个名为的函数可以完成以下任务:
class Animal {
public function eat($food) {
echo "Animal is eating : " . $food;
$tree = new Tree();
$tree->grow();
}
}
class Tree {
public function grow() {
$bt = debug_backtrace();
//var_dump($bt);
echo "<br />";
if (isset($bt[1]['object']))
echo get_class($bt[1]['object']);
echo "<br />Tree is growing";
}
}
$animal = new Animal();
$animal->eat("Food");
您还可以将调用方作为参数传递
<?php
Class AnotherClass{
public function getNameOfOriginatingClass($object){
echo get_class($object);
}
}
Class Someclass{
public function __construct(){
$A = new AnotherClass();
$A->getNameOfOriginatingClass($this);
}
}
$C = new Someclass();
这取决于您的url,但您可以这样做
function getNameOfOriginatingClass{
$this->load->library('user_agent');
$previous_url = $this->agent->referrer();
$url_segments = explode($previous_url,'/');
echo '<pre>';print_r($url_segments);
}
函数GetNameOfOriginating类{
$this->load->library('user_-agent');
$previous_url=$this->agent->referer();
$url_segments=explode($previous_url,'/');
回显“”;打印($url\u段);
}
打印此结果后,你可以看到你的链接在一个数组中分解成多个部分。。
通常,$url\u段[3]或$url\u段[4]将包含您以前的函数名,而以前的函数名将包含以前的类名,具体取决于您的url。我需要另一个类来知道请求来自某个类这对我帮助很大,但由于信誉不好,我无法接受或拒绝
<?php
Class AnotherClass{
public function getNameOfOriginatingClass($object){
echo get_class($object);
}
}
Class Someclass{
public function __construct(){
$A = new AnotherClass();
$A->getNameOfOriginatingClass($this);
}
}
$C = new Someclass();
function getNameOfOriginatingClass{
$this->load->library('user_agent');
$previous_url = $this->agent->referrer();
$url_segments = explode($previous_url,'/');
echo '<pre>';print_r($url_segments);
}