Thursday, May 27, 2010

All Time Top 10 User Rated PHP Classes

Yestutor Picks the All time Top 10 User Rated PHP Classes from PHP Classes.These classes are rated 1 to 10 according to user likeness and voting.

The list include

1. Image Processor (CSS)

2. MIME E-mail message sending,

3. REST Server

4 Forms generation and validation

5 SMTP E-mail sending class

6 Constant Management class

7 EmbeVi

8 CCValidator

9 MIME E-mail message parser

10 IDNA Convert

Image Processor (CSS)

This class can be used to draw images defined with CSS like properties.
It can create an empty image or open and existing image from a file.
The class can draw different types of primitives using CSS like style strings to define the parameters of those primitives.
Currently it can draw text strings, other images like watermarks, lines, rectangles, circles, ellipses, etc..
The generated image can also be cropped and resized before it is saved to a file.

MIME E-mail message sending

Class that may be used to compose and send e-mail messages.

It features:

- User definable headers and body parts.
- MIME encoding of text and HTML body parts with user defined character encoding using quoted-printable.
- Addition of file parts (attachments) with automatic content type detection.
- Forwarding of messages received from somebody else as intact attachments
- Support for multipart/related messages (eg. HTML messages with embedded images, stylesheets, frames, etc..)
- Support for multipart/alternative messages (eg. text and HTML versions in the same message).
- Encoding of message headers with user defined character encoding using q-encoding.
- Definition of the error delivery address setting the Return-Path header calling sendmail program directly.
- Several sub-classes for sending messages by different methods: PHP mail() function, sendmail, qmail, SMTP (with support for authentication and direct delivery mode), maildrop in Microsoft IIS or Exchange Pickup folder.
- Wrappers that emulate the mail() function using the SMTP, sendmail and qmail delivery sub-classes.
- Support for sending personalized bulk mail by replacing the contents of the message parts that differ for each recipient.
- HTML and plain text message parts can be composed using template engines. An example that works with Smarty template engine is provided.
- Retrieving the composed message data or size without sending the message

REST Server

This package can be used to implement REST Web services servers.
It uses a model-view-controller (MVC) implementation to route REST GET, POST, DELETE and URL to controllers classes.
It also provide helpers for handling HTTP requests, response, headers, MIME types and authentication.
It uses decoration instead of inheritance, so do not have to extend any classes to implement your servers.
No configuration files, custom .htaccess files or naming conventions are necessary.

Forms generation and validation

Class that generates HTML forms supporting:

- Multiple inputs may be interconnected in such way that client side events that occur on one input can trigger actions on the context of other inputs. Developers may use input interconnection support without writing Javascript code.
- Can be extended with new types of input controls plug-in classes.
- Custom input plug-in classes can be used to support for handling client site events on the server side without submitting the form or redrawing the whole form page
- Some control plug-in classes are made available:
* AJAX based form submission (without reloading the whole page)
* Auto-complete text inputs
* Select a location on a map using Google Maps API
* Calendar date input
* CAPTCHA test to prevent automated access by robots
* Linked select input to switch select options when the value of another input changes. An unlimited number of selected can be linked in cascade. Additional plug-in subclasses are provided to retrive option groups from a MySQL database or many other SQL databases using the Metabase PEAR::MDB2 PHP database abstraction layer APIs
* Manage animations that apply visual effects to the page form elements, like: fade-in, fade-out, show, hide, update content, etc..
- XHTML compliant output.
- Load submitted form field values even with register_globals option Off and strip slashes when magic_quotes_gpc option is On.
- Keyboard navigation support:
* Attachment of labels with activation keys to each form field.
* Tab navigation order index.
- Built-in server side (PHP based) and client side (Javascript 1.0 or better) field validation for:
* E-mail address
* Credit card numbers (Visa, Mastercard, American Express, Discover, Diners Club, Carte Blanche, enRoute, JCB, any of these or even determined by a select field).
* Regular expressions.
* Field not empty.
* Field equal to another (useful for password confirmation fields).
* Field different from another (useful for reminder fields that must not be equal to the actual password).
* As set (for check boxes, radio buttons and select multiple fields).
* As integer number (with range limitation).
* As floating point number (with range limitation).
* Programmer defined client and server validation functions.
- Highlight invalid fields rendering them distinct CSS styles
- Security attack prevention by optionally discarding invalid values passed in fields that could not be edited by users but may be spoofed by attackers.
- Option to define a value that, when used in a field, it is accepted without performing any of the validations defined for the field.
- Ability to stop the user from submiting a form more than once inadvertdly.
- Sub form validation (validate only smaller set of field depending on the submit button that was used).
- Composition and generation of the form HTML output with fields displayed as fully accessible or in read-only mode.
- Generation of Javascript functions (useful to set to the page ONLOAD event):
* Set the input focus to a field.
* Select the text of a field.
* Set the input focus and select the text of a field.
* Enable and disable input fields
- Automatic capitalization of the text of a field:
* Upper case.
* Lower case.
* Word initials
- Replacement of text field expressions to perform adjustments like trimming whitespace or auto-complete values based on rules defined by regular expressions
- Compose forms with templates using plain HTML files with embedded PHP code or using the Smarty template engine with a supplied pre-filter plugin
- Etc.

SMTP E-mail sending class

Class that connects to a SMTP mail server to send messages.
It features:
- Relaying message delivery to a programmer defined SMTP server.
- Programmer defined server address, server port, connection timeout, origin host address.
- Support for authentication methods PLAIN and LOGIN.
- Support for POP3 based authentication before delivery.
- Direct delivery to one or more recipients with e-mail addresses with the same domain, so you do not need to relay on a own or your ISP SMTP server.
- Setting sender and recipient address as a separate step from the sending the headers and the body of the message.
- Returns message delivery success.
- Detects extensions supported by the SMTP server.
- Takes advantage of the SMTP PIPELINING extension to buffer SMTP commands, therefore minimizing SMTP dialogue between the class and the server in order to provide a much faster queueing of messages to be delivered to a large amount of recipients ( bulk mail ).
* Note: this class is better used in conjunction with the class “MIME E-mail message composing and sending class”. See in the Email group.

Constant Management class

This is a simple class that can be used to define constant values that can be updated.
It can store and retrieve values from global variables with unique names based on a constant name key. If the constant is already defined, the class can update its value

EmbeVi

This class can be used to embed remote videos and audio in HTML pages.
It takes the URL of a video or audio page of a remote site and generates HTML for embedding a player for that video or audio clip in another page.
Currently it supports embedding videos and audio clips from:

- YouTube,- 220.ro,- Google video- Dailymotion- Trilulilu- Metacafe- College Humor- Cnet- Glumbert- Yahoo
- MySpace- LiveLeak- Vimeo- GameTrailers- UStream- ClipsHack- FunnyOrDie- FileBox- Last.fm- Youku- Rediff
- Rambler.ru- Tudou- ku6- TinyPic- Libero.it- ESPN- NFL- Web.de- eksenim.mynet- RuTube- LiveVideo- Vbox7
- Revver- Current- dalealplay- ClipFish.de- Clip.vn- LiveStream- Tangle- Vidiac- 5min- vol.at- WeGame- ikbis
- YouMaker- Snotr- OneTrueMedia- clevver- kewego- Clipser- DailyHaHa- HowCast- Aniboom- Bragster- TeacherTube
- ShredOrDie- TalentRun- Autsch.de- tvbvideo.de- Clipmoon- Viddyou- SpyMac- YouAre.tv- MindBites- JujuNation
- RoofTopComedy- Hamburg1Video.de- Caught-on-Video- Bubblare.se- Jaycut- Spotn.de- TheXvid- Scivee.tv- Tvosz
- DailyComedy- DeutschlandReporter.de- MotorSportMad- RheinVideo.de- SelfCastTV- MyUbo.sk- GettyLoad.de
- ClipHost24- UvuVideo.org- CroVideos- QubeTV.tv- CityTube.de- ConstantComedy- Luegmol.ch- MantouTV
- CloneVideos- Realitatea.net- MTV- RockTube.us- MyPlay- 123Video- 9You- Blastro- Cellfish- Clarin- ClipJunkie
- ClipLife.jp- TheDailyShow- ComedyCentral- ColbertNation- CrunchyRoll- DotSub- DivShare- FanDome- G4TV
- GameSpot- GameTube- Gloria.tv- GotGame- Guzer- Izlesene- Joost- Justin.tv- Koreus- Machinima
- MSNBC- Mail.ru- MadnessVideo.net- Milliyet.tr- MoFile- Mpora- SeeHaHa- MThai- OnSmash- Playlist.com
- RawVegas.tv- ScreenToaster- SevenLoad- ShareView.us- Smotri- SouthParkStudios- Spike- CBSSports- Tagtele
- TM-Tube- TRTube- Videolog.uol.br- U-Tube.ru- Sapo.pt- Videonuz- Vidmax- Vsocial- Goear- IJigg- Jamendo
- JujuNation- Last.fm- Nhaccuatui

CCValidator

This class can be used to validate credit card numbers.

It checks the integrity of the number by using the mod 10 algorithm.
The class can also check a credit card number of a given card type by looking at the number prefix. Currently it can check whether the card type is: VISA, Mastercard, American Express, Diners Club, Discover or JCB.

MIME E-mail message parser

This class can be used to parse and decode MIME e-mail messages.
It supports decoding single RFC 2822 MIME messages or archives that aggregate multiple messages in the mbox format.
The decoded message data is returned as an array that describes one or more messages found in a message file or data string.
The bodies of multipart messages can be decoded into distinct sub-messages.
The message body data can decoded and saved to separate files, so the class can handle messages larger than the available memory.
The parser can tolerate some syntax errors in malformed messages that are not compliant with RFC 2822.
An auxiliar class is provided to parse and extract e-mail address lists from message headers.

IDNA Convert

IDNA stands for Internationalized Domain Names for Applications. It is a standard described in RFC 3490, RFC 3491 and RFC 3492. It is used to allow language specific characters in domain names, like the umlauts in German, accents in latin languages like French, or even chinese characters.
This class allows you to convert domain names between the encoded Punycode notation and the decoded 8bit (UTF-8) notation. It simplifies the use of domain names defined with IDNA in applications or scripts.


People who read this post also read :



If you liked my post then,

Subscribe to this site via Email:

Click here to Subscribe to FREE email updates from "itrickz", so that you do not miss out anything that can be valuable to you and your blog!!

DropJack!
Digg Google Bookmarks reddit Mixx StumbleUpon Technorati Yahoo! Buzz DesignFloat Delicious BlinkList Furl

0 comments: on "All Time Top 10 User Rated PHP Classes"

Post a Comment