So erhalten Sie einen Klassennamen ohne Namespace in PHP

藏色散人
Freigeben: 2023-04-08 07:34:02
nach vorne
3058 Leute haben es durchsucht

方法很多,列出几个,以供参考。

Laravel 源码里扒出来的 class_basename 辅助函数

basename(str_replace('\\', '/', $class));
Nach dem Login kopieren

substr 实现

substr(strrchr($class, "\\"), 1);
// or
substr($class, strrpos($class, '\\') + 1);
Nach dem Login kopieren

explode 实现

array_pop(explode('\\', $class));
Nach dem Login kopieren

ReflectionClass 实现

(new \ReflectionClass($class))->getShortName();
Nach dem Login kopieren

其中,ReflectionClass 是最快最保险的方案,但此类必须实际存在,不存在则会抛出 ReflectionException: Class \Foo\Bar does not exist。

更多PHP相关知识,请访问PHP教程

Das obige ist der detaillierte Inhalt vonSo erhalten Sie einen Klassennamen ohne Namespace in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
Quelle:learnku.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage