@param string $arrayFieldName

@return IForm
336762
public function getInnerArrayForm(string $arrayFieldName) : IForm
    {
        $form = $this->getForm();

        $currentValue = $this->getInitialValuesForInnerForm();

        if (is_array($currentValue)) {
            $form = $form->withInitialValues($currentValue);
        }

        $fieldNameMap = [];

        foreach ($form->getFieldNames() as $fieldName) {
            $fieldNameMap[$fieldName] = $arrayFieldName . '[' . $fieldName . ']';
        }

        return $form->withFieldNames($fieldNameMap);
    }
659374
public function postFromArray(string $arrayName, string $key, $default = "") {
        $post = $this->_getPost();
        if (!is_array($post[$arrayName]) || !array_key_exists($key, $post[$arrayName])) {
            return $default;
        }
		$requestClass = $this->postAsRequestClass();
		$requestValues = $requestClass->value($arrayName, []);
        return $requestValues->value($key, $default);
    }
1098083
public function fieldGreaterThanOrEqualAnother(string $fieldName, string $otherFieldName)
    {
        $this->validateFieldsExist(__METHOD__, $fieldName, $otherFieldName);

        return $this->validate(new FieldGreaterThanOrEqualAnotherValidator($this->fields[$fieldName], $this->fields[$otherFieldName]));
    }
1291532
public function getField($fieldName)
    {
        if (array_key_exists($fieldName, $this->_message)) {
            return $this->_message[$fieldName];
        } else {
            return null;
        }
    }
480980
public function addField($fieldName, Field $field)
    {
        $this->fieldNames[ $fieldName ] = $fieldName;
        $this->fields[ $fieldName ]     = $field;

        return $fieldName;
    }
466850
public function eq($field, $value) {
        if (is_array($value)) {
            $this->in($field, $value);

        } else if ($value === null) {
            $this->null($field);

        } else {
            $this->add($field, '=', $value);
        }

        return $this;
    }
1316353
public function input($fieldName, array $options = [])
    {
        if ($fieldName instanceof \Field\Model\Entity\Field) {
            if (!$this->_isRendering) {
                $this->_isRendering = true;
                $result = $fieldName->edit($this->_View);
                $this->_isRendering = false;

                return $result;
            } else {
                $options += ['value' => $fieldName->value, 'label' => $fieldName->label];
                if ($fieldName->metadata->required) {
                    $options['label'] .= ' *';
                    $options['required'] = 'required';
                }
                $fieldName = $fieldName->get('name');
            }
        }

        return parent::input($fieldName, $options);
    }
700906
public static function isFieldEditable($fieldName) {
		if( $fieldName == static::$IDFIELD ) {
			return false;
		}
		if( !is_null(static::$editableFields) ) {
			return in_array($fieldName, static::$editableFields);
		}
		if( method_exists(static::$validator, 'isFieldEditable') ) {
			return in_array($fieldName, static::$editableFields);
		}
		return in_array($fieldName, static::$fields);
	}
1211389
function field($fieldName) {
        if ($fieldName) {
            if ($this->fields && $this->fields != '*') {
                if ($fieldName == 'SQL_CALC_FOUND_ROWS *') {
                    $this->fields = 'SQL_CALC_FOUND_ROWS' . " $this->fields";
                }
                else if ($fieldName != '*') {
                    $this->fields = $fieldName . ",$this->fields";
                }
                //else {
                //    $this->fields .= ',' . $fieldName;
                //}
            }
            else {
                $this->fields = $fieldName;
            }
        }
        return $this;
    }
1284278
public function setFieldValue($fieldName, $value)
    {
        if (isset($this->originalValues[$fieldName])
            && $this->originalValues[$fieldName] === $value
        ) {
            # the given value is the same as the original value;
            # ignore any given value
            unset($this->givenValues[$fieldName]);
        } elseif (isset($this->originalValues[$fieldName])
            && $this->originalValues[$fieldName] !== $value
            && isset($this->defaults[$fieldName])
            && $this->defaults[$fieldName] === $value
        ) {
            # the given value is the same as a default value, but different from
            # the original value; change it
            $this->givenValues[$fieldName] = $value;
        } elseif (isset($this->defaults[$fieldName])
            && $this->defaults[$fieldName] === $value
        ) {
            # the given value is the same as the default value;
            # ignore any given value
            unset($this->givenValues[$fieldName]);
        } else {
            $this->givenValues[$fieldName] = $value;
        }
        return $this;
    }
736506
public function fieldLessThanOrEqualAnother(string $fieldName, string $otherFieldName)
    {
        $this->validateFieldsExist(__METHOD__, $fieldName, $otherFieldName);

        return $this->validate(new FieldLessThanOrEqualAnotherValidator($this->fields[$fieldName], $this->fields[$otherFieldName]));
    }
189818
public function makeStorableArrayFieldValue($value)
    {
        if ($this->_isEncodedArrayFieldValue($value)) {
            $value = $this->_decodeArrayFieldValue($value);
        }

        $value = $this->_serializeValue($value);
        return $value;
    }
770983
public function getFilter(string $fieldName): ?Condition
    {
        [$name, $filters] = $this->getArrayAndKeyName($fieldName, 'filters');

        return array_first($filters, function ($filter) use ($name) {
            return $filter->getName() === $name;
        });
    }
936912
private function _whereAttribute(string $arrayName, $value)
    {
        $finderClosure = function ($value, $attributeValue) {
            return in_array($value, $attributeValue->toArray());
        };

        return $this->hydrateDefaultElements(
            $this->arrayFinder($arrayName, $value, $finderClosure)
        );
    }
922964
protected function explodeFieldNameArray($fieldName)
    {
        $name = str_replace('][', '.', $fieldName);
        $name = str_replace(array('[', ']'), '.', $name);

        $name = rtrim($name, '.');

        return explode('.', $name);
    }
1085791
final public static function name(string $fieldName) : FieldLabelBuilder
    {
        $labelBuilder       = new FieldLabelBuilder();
        $labelBuilder->name = $fieldName;

        return $labelBuilder;
    }
346285
public function HasField ($fieldOrFieldName = NULL) {
		$fieldName = NULL;
		if ($fieldOrFieldName instanceof \MvcCore\Ext\Forms\IField) {
			$fieldName = $fieldOrFieldName->GetName();
		} else if (is_string($fieldOrFieldName)) {
			$fieldName = $fieldOrFieldName;
		}
		return isset($this->fields[$fieldName]);
	}