Selectors::selectorHasField() method

Does given selector have given field (and optionally operator and/or value)?

Available since version 3.0.174.


// basic usage
$array = Selectors::selectorHasField($selectors, $fieldName);

// usage with all arguments
$array = Selectors::selectorHasField($selectors, $fieldName, array $options = []);


selectorsstring, array, Selectors

Selector string, array or Selectors object to look in

fieldNamestring, array

Field name string to match or array of them to match any one of them

options (optional)array
  • verbose (bool): Return associative array with verbose result? See return value. (default=false)
  • operator (string): Require this operator (default='' for any)
  • value (string|int): Require this value (default=null for any)
  • remove (bool): Remove matched Selector from Selectors returned in verbose result? (default=false)

Return value

array bool

True of has field, false if not, or array with the following if 'verbose' option requested:

  • result (bool): Did it match (true or false)
  • selector (Selector|null): Selector object that matched (only if result is true)
  • selectors (Selectors|null): Selectors object that was analyzed or null if not needed
  • field (string): Field name that matched
  • operator (string): Operator that matched
  • value (string|null): Value that matched or null if not applicable

Selectors methods and properties

API reference based on ProcessWire core version 3.0.184

Twitter updates

  • ProcessWire 3.0.185 (dev) core updates, plus new Session Allow module— More
    17 September 2021
  • Three new ProcessWire Textformatter modules: Find/Replace, Markdown in Markup, and Emoji— More
    3 September 2021
  • This week we have a new master version released after a year in the making. With nearly 40 pull requests, hundreds of new additions and more than 100 issue reports resolved, this new version has a ton of great new stuff— More
    27 August 2021

Latest news

  • ProcessWire Weekly #385
    In the 385th issue of ProcessWire Weekly we'll cover the latest weekly update from Ryan, check out a new fieldtype module called Page Reference Context Data, and more. Read on! / 25 September 2021
  • ProcessWire 3.0.184 new master/main version
    This week we have a new master/main version released after a full year in the making. As you might imagine, this new version has a ton of great new stuff and we’ll try to cover much of it here.
    Blog / 27 August 2021
  • 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