wireClassName() function

Normalize a class name with or without namespace, or get namespace of class

Default behavior is to return class name without namespace.

Usage

// basic usage
$string = wireClassName($className);

// usage with all arguments
$string = wireClassName($className, $withNamespace = false, bool $verbose = false);

Arguments

NameType(s)Description
classNamestring, object

Class name or object instance

withNamespace (optional)bool, int, string

Should return value include namespace? (default=false)

  • false (bool): Return only class name without namespace (default).
  • true (bool): Yes include namespace in returned value.
  • 1 (int): Return only namespace (i.e. “ProcessWire”, with no backslashes unless $verbose argument is true)
verbose (optional)bool

When namespace argument is true or 1, use verbose return value (added 3.0.143). This does the following:

  • If returning class name with namespace, this makes it include a leading backslash, i.e. \ProcessWire\Wire
  • If returning namespace only, adds leading backslash, plus trailing backslash if namespace is not root, i.e. \ProcessWire\

Return value

string null

Returns string or NULL if namespace-only requested and unable to determine


Functions methods and properties

API reference based on ProcessWire core version 3.0.244

Latest news

  • ProcessWire Weekly #560
    In the 560th issue of ProcessWire Weekly we'll check out the latest core updates, cover newly released ProcessWire modules, and more. Read on!
    Weekly.pw / 1 February 2025
  • ProcessWire 3.0.244 new main/master version
    ProcessWire 3.0.244 is our newest main/master/stable version. It's been more than a year in the making and is packed with tons of new features, issue fixes, optimizations and more. This post covers all the details.
    Blog / 18 January 2025
  • Subscribe to weekly ProcessWire news

“…building with ProcessWire was a breeze, I really love all the flexibility the system provides. I can’t imagine using any other CMS in the future.” —Thomas Aull