Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 25 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,31 @@ AI autogenerated may 17th 2025
## Overview
Horde/Form is a powerful and flexible form handling library that provides a comprehensive set of tools for creating, validating, and processing web forms in PHP applications. It's part of the Horde Application Framework and offers a robust solution for form management with extensive field types and validation capabilities.

## UPGRADING FROM FORMS v2

### Minimum

Forms v3 lib/ folder contains a straight conversion of Forms v2 with the following BC breaking changes:
- Most parameters have been changed to NOT use references for primitives. I.e. derived forms and types need to drop the & from parameter signatures
- $type->getInfo($vars, &$info) calls now must be $info = $type->getInfo($vars, $info);
- $bValid = $type->isValid($var, $vars, $value, $message); no longer updates the $message parameter. You need to call $type->getMessage() after $type->isValid if you want to retrieve a potentially set message

This code base is only for easily upgrading existing libraries and apps to Horde 6. It will be deprecated in the next minor release v3.1 and removed in the next major release V4.

### Namespaced

A version with more BC breaking changes is introduced in the src/V3 folder

- Class names follow strict PSR-4 scheme, i.e. Horde_Form_Type_text -> Horde\Form\V3\TextType
- Signatures based on interfaces, deriving from base class is optional
- Proper PER-CS styled code base including types, dropping underscores for properties etc
- This version will be deprecated in V4 and dropped in V5

### V4

- A more involved redesign of Forms based on PHP 8.4 features such as property hooks


## Features

### Form Field Types
Expand Down
Loading
Loading