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.185

Twitter updates

  • ProcessWire 3.0.192 (dev branch) contains 11 issue fixes and 5 pull requests, over 20 commits— More
    7 January 2022
  • ProcessWire 3.0.191 core updates: updates to the installer and the profile exporter module— More
    24 December 2021
  • This week ProcessWire went on a diet, trimming the core size from 15.5 MB down to 7.5 MB by moving optional site profiles into their own GitHub repos— More
    17 December 2021

Latest news

  • ProcessWire Weekly #402
    In the 402nd issue of ProcessWire Weekly we'll check out ProcessWire 3.0.193, highlight recent ProcessWire projects and resources, and more. Read on! / 22 January 2022
  • ProcessWire 3.0.190 core updates
    ProcessWire 3.0.190 has 15 commits relative to 3.0.189 and contains a mixture of issue resolutions and feature additions. This post covers them all, in addition to updates for the PageAutosave and ProFields Table modules.
    Blog / 3 December 2021
  • Subscribe to weekly ProcessWire news

I just love the easy and intuitive ProcessWire API. ProcessWire rocks!” —Jens Martsch, Web developer