GutterStar.net, Bridging Technology and Accessibility Skip Navigation

In Memory of Claire
GutterStar.net Home

 
We're all in the gutter, but some of us
are looking at the stars. (Oscar Wilde)

Content Starts Here

Click to expand...  (Last updated: July/31/2008)


GutterStar.net/News - World News Central

Bookmark with:


Web and Software Development

To find additional resources, enter the search terms: "programming" or "webmaster tools"
 




Want to use a simple PHP script to track clicks on your website?: The GutterStar.net PHP_Tracker Script - V1.0!
Thank you for visiting GutterStar.net!

Copyright GutterStar.net, all rights reserved.
  PHP   Paradigm  imperative, object-oriented   Appeared in  1995   Designed by  Rasmus Lerdorf   Developer  The PHP Group   Latest release  5.2.5/ 8 November 2007   Typing discipline  Dynamic, weak   Influenced by  C, Perl, Java, C++, Python   OS  Cross-platform   License  PHP License   Website  http://php.net/  table end PHP is a computer scripting language originally designed for producing dynamic web pages. [1] The name PHP is a recursive acronym for PHP: Hypertext Preprocessor. PHP is used mainly in server-side scripting , but can be used from a command line interface or in standalone graphical applications. Textual User Interfaces can also be created using ncurses. The main implementation is produced by The PHP Group and released under the PHP License . This implementation serves to define a de facto standard for PHP, as there is no formal specification . The most recent version of PHP is 5.2.5, released on 8 November 2007 . It is considered to be free software by the Free Software Foundation. [2] PHP was written as a set of Common Gateway Interface (CGI) binaries in the C programming language by the Danish/Greenlandic programmer Rasmus Lerdorf in 1994, to replace a small set of Perl scripts he had been using to maintain his personal homepage. [3] Lerdorf initially created PHP to display his résumé and to collect certain data, such as how much traffic his page was receiving. Personal Home Page Tools was publicly released on 8 June 1995 after Lerdorf combined it with his own Form Interpreter to create PHP/FI (this release is considered PHP version 2). [4] Zeev Suraski and Andi Gutmans , two Israeli developers at the Technion IIT , rewrote the parser in 1997 and formed the base of PHP 3, changing the language's name to the recursive initialism PHP: Hypertext Preprocessor. The development team officially released PHP/FI 2 in November 1997 after months of beta testing. Public testing of PHP 3 began and the official launch came in June 1998. Suraski and Gutmans then started a new rewrite of PHP's core, producing the Zend Engine in 1999. [5] They also founded Zend Technologies in Ramat Gan , Israel, which actively manages the development of PHP. In May 2000, PHP 4, powered by the Zend Engine 1.0, was released. The most recent update released by The PHP Group, is for the older PHP version 4 code branch which, as of January 2008 , is up to version 4.4.8. PHP 4 will be supported by security updates until August 8, 2008. [6] On July 13, 2004 , PHP 5 was released powered by the new Zend Engine II. PHP 5 included new features such as: [7] • Improved support for object-oriented programming • The PHP Data Objects extension, which defines a lightweight and consistent interface for accessing databases • Performance enhancements • Better support for MySQL and MSSQL • Embedded support for SQLite • Integrated SOAP support • Data iterators • Error handling via exceptions Currently, PHP 5.x is the only stable version that is being actively developed; active development on PHP 4 ceased at the end of 2007 . However, critical security updates for PHP 4 will be provided until August 8, 2008. [8] PHP 6 is currently under development, and is slated to release in conjunction with the decommission of PHP 4.[citation needed] As a result of the GoPHP5 initiative, many high profile open source projects ceased to support PHP 4 in new code as of 5 February 2008. [9] PHP is a widely-used general-purpose scripting language that is especially suited for Web development and can be embedded into HTML. PHP generally runs on a web server , taking PHP code as its input and creating Web pages as output. However, it can also be used for command-line scripting and client-side GUI applications. PHP can be deployed on most web servers and on almost every operating system and platform free of charge. The PHP Group also provides the complete source code for users to build, customize and extend for their own use. PHP primarily acts as a filter . The PHP program takes input from a file or stream containing text and special PHP instructions and outputs another stream of data for display. From PHP 4, the PHP parser compiles input to produce bytecode for processing by the Zend Engine , giving improved performance over its interpreter predecessor. PHP 5 uses the Zend Engine II. Originally designed to create dynamic web pages, PHP's principal focus is server-side scripting . While running the PHP parser with a web server and web browser , the PHP model can be compared to other server-side scripting languages such as Microsoft 's ASP.NET system, Sun Microsystems' JavaServer Pages , and mod perl as they all provide dynamic content to the client from a web server. To more directly compete with the "framework" approach taken by these systems, Zend is working on the Zend Framework - an emerging (as of June 2006) set of PHP building blocks and best practices; other PHP frameworks along the same lines include CakePHP, PRADO and Symfony. The LAMP architecture has become popular in the Web industry as a way of deploying inexpensive, reliable, scalable, secure web applications. PHP is commonly used as the P in this bundle alongside Linux, Apache and MySQL , although the P can also refer to Python or Perl . PHP can be used with a large number of relational database management systems , runs on all of the most popular web servers and is available for many different operating systems . This flexibility means that PHP has a wide installation base across the Internet; As of April 2007 , over 20 million Internet domains were hosted on servers with PHP installed. [10] The number of installations is different from the number of sites actually using those installations, but this statistic does reflect the popularity of PHP. Examples of popular open source server-side PHP applications include phpBB, WordPress , and MediaWiki. PHP also provides a command line interface SAPI for developing shell and desktop applications, daemons, log parsing, or other system administration tasks that have traditionally been the domain of Perl, Python, awk , or shell scripting. [11] PHP provides bindings to GUI libraries such as GTK+ (with PHP-GTK), Qt with PHP-Qt and text mode libraries like ncurses in order to facilitate development of a broader range of cross-platform GUI applications. As with many scripting languages, PHP scripts are normally kept as human-readable source code, even on production webservers. While this allows flexibility, it can raise issues with security and performance. Encoders hinder source code reverse engineering . Encoders fall broadly into two types; those that hide source code and those that compile code into "optcode."[citation needed] The downside of this latter approach is that a special extension has to be installed on the server in order to run encoded scripts, however the approach of encoding compiled code and use of an extension offers typically the best performance, security and opportunity for additional features that may be useful for developers. Compiled code solutions may exploit the potential for increased security through the use of their own execution engine, although some simpler solutions rely on the regular PHP engine to execute the compiled code. The most commonly used packages for source code protection are from Zend Technologies and ionCube Ltd. Code optimizers improve the quality of the compiled code by reducing its size and making changes that can reduce the execution time and improve performance. The nature of the PHP compiler is such that there are often many opportunities for code optimization. Accelerators offer performance gains by caching the compiled form of a PHP script in shared memory to avoid the overhead of parsing and compiling the code every time the script runs. They may also perform code optimization to provide increased execution performance. Both commercial (e.g. Zend Platform) and open source accelerators (e.g. xcache, eAccelerator, APC) are available. The PHP Extension and Application Repository (PEAR) project aims to provide reusable libraries and components for PHP development. PEAR projects are usually written in PHP code using the Object-oriented programming paradigm. PHP has a formal development manual that is maintained by the free software community . In addition, answers to many questions can often be found by doing a simple internet search. PHP users assist each other through various media such as chat, forums, newsgroups and PHP developer web sites. In turn, the PHP development team actively participates in such communities, garnering assistance from them in their own development effort (PHP itself) and providing assistance to them as well. There are many help resources [14] available for the novice PHP programmer. RSS Screenshot of an RSS feed as seen in Mozilla Thunderbird File extension: .rss, .xml MIME type: application/rss+xml (Registration Being Prepared)[1] Extended from: XML RSS (Really Simple Syndication) is a family of Web feed formats used to publish frequently updated content such as blog entries, news headlines or podcasts. An RSS document, which is called a "feed," "web feed," or "channel," contains either a summary of content from an associated web site or the full text. RSS makes it possible for people to keep up with their favorite web sites in an automated manner that's easier than checking them manually. RSS content can be read using software called an "RSS reader", "feed reader" or an "aggregator". The user subscribes to a feed by entering the feed's link into the reader or by clicking an RSS icon in a browser that initiates the subscription process. The reader checks the user's subscribed feeds regularly for new content, downloading any updates that it finds. The initials "RSS" are used to refer to the following formats: Really Simple Syndication (RSS 2.0) RDF Site Summary (RSS 1.0 and RSS 0.90) Rich Site Summary (RSS 0.91) RSS formats are specified using XML, a generic specification for the creation of data formats. The RSS formats were preceded by several attempts at syndication that did not achieve widespread popularity. The basic idea of restructuring information about web sites goes back to as early as 1995, when Ramanathan V. Guha and others in Apple Computer's Advanced Technology Group developed the Meta Content Framework (MCF).[2] For a more detailed discussion of these early developments, see the history of web syndication technology. RDF Site Summary, the first version of RSS, was created by Guha at Netscape in March 1999 for use on the My.Netscape.Com portal. This version became known as RSS 0.9.[3] In July 1999, Dan Libby of Netscape produced a new version, RSS 0.91,[4] that simplified the format by removing RDF elements and incorporating elements from Dave Winer's scriptingNews syndication format.[5] Libby also renamed RSS to Rich Site Summary and outlined further development of the format in a "futures document".[6] This would be Netscape's last participation in RSS development for eight years. As RSS was being embraced by web publishers who wanted their feeds to be used on My.Netscape.Com and other early RSS portals, Netscape dropped RSS support from My.Netscape.Com in April 2001 during new owner AOL's restructuring of the company, also removing documentation and tools that supported the format.[7] Two entities emerged to fill the void, with neither Netscape's help nor approval: The RSS-DEV Working Group and Winer, whose UserLand Software had published some of the first publishing tools outside of Netscape that could read and write RSS. Winer published a modified version of the RSS 0.91 specification on the UserLand web site, covering how it was being used in his company's products, and claimed copyright to the document.[8] A few months later, UserLand filed a U.S. trademark registration for RSS, but failed to respond to a USPTO trademark examiner's request and the request was rejected in December 2001.[9] The RSS-DEV Working Group, a project whose members included Guha and representatives of O'Reilly Media and Moreover, produced RSS 1.0 in December 2000.[10] This new version, which reclaimed the name RDF Site Summary from RSS 0.9, reintroduced support for RDF and added XML namespaces support, adopting elements from standard metadata vocabularies such as Dublin Core. In December 2000, Winer released RSS 0.92[11] a minor set of changes aside from the introduction of the enclosure element, which permitted audio files to be carried in RSS feeds and helped spark podcasting. He also released drafts of RSS 0.93 and RSS 0.94 that were subsequently withdrawn.[12] In September 2002, Winer released a major new version of the format, RSS 2.0, that redubbed its initials Really Simple Syndication. RSS 2.0 removed the type attribute added in the RSS 0.94 draft and added support for namespaces. Because neither Winer nor the RSS-DEV Working Group had Netscape's involvement, they could not make an official claim on the RSS name or format. This has fueled ongoing controversy in the syndication development community as to which entity was the proper publisher of RSS. One product of that contentious debate was the creation of an alternative syndication format, Atom, that began in June 2003. The Atom syndication format, whose creation was in part motivated by a desire to get a clean start free of the issues surrounding RSS, has been adopted as IETF Proposed Standard RFC 4287. In July 2003, Winer and UserLand Software assigned the copyright of the RSS 2.0 specification to Harvard's Berkman Center for the Internet & Society, where he had just begun a term as a visiting fellow.[13] At the same time, Winer launched the RSS Advisory Board with Brent Simmons and Jon Udell, a group whose purpose was to maintain and publish the specification and answer questions about the format.[14] In December 2005, the Microsoft Internet Explorer team[15] and Outlook team[16] announced on their blogs that they were adopting the feed icon first used in the Mozilla Firefox browser . A few months later, Opera Software followed suit. This effectively made the orange square with white radio waves the industry standard for RSS and Atom feeds, replacing the large variety of icons and text that had been used previously to identify syndication data. In January 2006, Rogers Cadenhead relaunched the RSS Advisory Board without Dave Winer's participation, with a stated desire to continue the development of the RSS format and resolve ambiguities. In June 2007, the board revised their version of the specification to confirm that namespaces may extend core elements with namespace attributes, as Microsoft has done in Internet Explorer 7. In their view, a difference of interpretation left publishers unsure of whether this was permitted or forbidden. As noted above, there are several different versions of RSS, falling into two major branches (RDF and 2.*). The RDF, or RSS 1.* branch includes the following versions: RSS 0.90 was the original Netscape RSS version. This RSS was called RDF Site Summary, but was based on an early working draft of the RDF standard, and was not compatible with the final RDF Recommendation. RSS 1.0 is an open format by the RSS-DEV Working Group, again standing for RDF Site Summary. RSS 1.0 is an RDF format like RSS 0.90, but not fully compatible with it, since 1.0 is based on the final RDF 1.0 Recommendation. RSS 1.1 is also an open format and is intended to update and replace RSS 1.0. The specification is an independent draft not supported or endorsed in any way by the RSS-Dev Working Group or any other organization. The RSS 2.* branch (initially UserLand, now Harvard) includes the following versions: RSS 0.91 is the simplified RSS version released by Netscape, and also the version number of the simplified version championed by Dave Winer from Userland Software. The Netscape version was now called Rich Site Summary; this was no longer an RDF format, but was relatively easy to use. It remains the most common RSS variant. RSS 0.92 through 0.94 are expansions of the RSS 0.91 format, which are mostly compatible with each other and with Winer's version of RSS 0.91, but are not compatible with RSS 0.90. In all Userland RSS 0.9x specifications, RSS was no longer an acronym. RSS 2.0.1 has the internal version number 2.0. RSS 2.0.1 was proclaimed to be "frozen", but still updated shortly after release without changing the version number. RSS now stood for Really Simple Syndication. The major change in this version is an explicit extension mechanism using XML Namespaces. For the most part, later versions in each branch are backward-compatible with earlier versions (aside from non-conformant RDF syntax in 0.90), and both versions include properly documented extension mechanisms using XML Namespaces, either directly (in the 2.* branch) or through RDF (in the 1.* branch). Most syndication software supports both branches. Mark Pilgrim's article "The Myth of RSS Compatibility" discusses RSS version compatibility in more detail. The extension mechanisms make it possible for each branch to track innovations in the other. For example, the RSS 2.* branch was the first to support enclosures, making it the current leading choice for podcasting, and as of mid-2005 is the format supported for that use by iTunes and other podcasting software; however, an enclosure extension is now available for the RSS 1.* branch, mod_enclosure. Likewise, the RSS 2.* core specification does not support providing full-text in addition to a synopsis, but the RSS 1.* markup can be (and often is) used as an extension. There are also several common outside extension packages available, including a new proposal from Microsoft for use in Internet Explorer 7. The most serious compatibility problem is with HTML markup. Userland's RSS reader—generally considered as the reference implementation—did not originally filter out HTML markup from feeds. As a result, publishers began placing HTML markup into the titles and descriptions of items in their RSS feeds. This behavior has become expected of readers, to the point of becoming a de facto standard, though there is still some inconsistency in how software handles this markup, particularly in titles. The RSS 2.0 specification was later updated to include examples of entity-encoded HTML; however, all prior plain text usages remain valid. The primary objective of all RSS modules is to extend the basic XML schema established for more robust syndication of content. This inherently allows for more diverse, yet standardized, transactions without modifying the core RSS specification. To accomplish this extension, a tightly controlled vocabulary (in the RSS world, "module"; in the XML world, "schema") is declared through an XML namespace to give names to concepts and relationships between those concepts. Some RSS 2.0 modules with established namespaces: Ecommerce RSS 2.0 Module Media RSS 2.0 Module OpenSearch RSS 2.0 Module Several BitTorrent-based peer-to-peer applications also support RSS. Such feeds (also known as Torrent/RSS-es or Torrentcasts) allow client applications to download files automatically from the moment the RSS reader detects them (also known as Broadcatching). Aggregators Atom Podcasting Syndication Online chat can refer to any kind of communication over the Internet , but is primarily meant to refer to direct one-on-one chat or text-based group chat (formally also known as synchronous conferencing ), using tools such as instant messaging applications— computer programs, Internet Relay Chat, talkers and possibly MUDs, MUCKs, MUSHes and MOOes. The following are common chat programs and protocols: list of 12 items • AOL Instant Messenger (AIM) • Camfrog • Campfire • Gadu-Gadu • Google Talk • Internet Relay Chat (IRC) • Jabber (XMPP) • Meetro • MOO • MUD • MUSH • PalTalk list end list of 11 items • Pichat • PSYC • SILC • Skype • Talk • Talker • TeamSpeak (TS) • Userplane • Vivox • Windows Live Messenger • Yahoo! Messenger list end Chat programs supporting multiple protocols: list of 7 items • Adium • IMVU • Kopete • Meetro • Miranda IM • Pidgin • Trillian list end Online Chatting Sites • BobChatter • Flickim • MeBeam • Meebo • RadiusIM • Userplane • webChattr Synchronous conferencing is the formal term used in science , in particular in computer-mediated communication, collaboration and learning , to describe online chat technologies. It has arisen at a time when the term chat had a negative connotation. Today it is occasionally also extended to mean audio/video conferencing or instant messaging systems, given they provide a text-based multi-user chat function. The word synchronous in this case is not to be considered a technical term, but rather describing how it is perceived by humans - chat happens in real time before your eyes. Typical synchronous conferencing technologies include list of 6 items • Internet Relay Chat (IRC) • MUDs (Multi User Dungeons) • PSYC (Protocol for SYnchronous Conferencing) • SILC (Secure Internet Live Conferencing protocol) • Webchats • XMPP (Extensible Messaging and Presence Protocol) list end PHP   Paradigm  imperative, object-oriented   Appeared in  1995   Designed by  Rasmus Lerdorf   Developer  The PHP Group   Latest release  5.2.5/ 8 November 2007   Typing discipline  Dynamic, weak   Influenced by  C, Perl, Java, C++, Python   OS  Cross-platform   License  PHP License   Website  http://php.net/  table end PHP is a computer scripting language originally designed for producing dynamic web pages. [1] The name PHP is a recursive acronym for PHP: Hypertext Preprocessor. PHP is used mainly in server-side scripting , but can be used from a command line interface or in standalone graphical applications. Textual User Interfaces can also be created using ncurses. The main implementation is produced by The PHP Group and released under the PHP License . This implementation serves to define a de facto standard for PHP, as there is no formal specification . The most recent version of PHP is 5.2.5, released on 8 November 2007 . It is considered to be free software by the Free Software Foundation. [2] PHP was written as a set of Common Gateway Interface (CGI) binaries in the C programming language by the Danish/Greenlandic programmer Rasmus Lerdorf in 1994, to replace a small set of Perl scripts he had been using to maintain his personal homepage. [3] Lerdorf initially created PHP to display his résumé and to collect certain data, such as how much traffic his page was receiving. Personal Home Page Tools was publicly released on 8 June 1995 after Lerdorf combined it with his own Form Interpreter to create PHP/FI (this release is considered PHP version 2). [4] Zeev Suraski and Andi Gutmans , two Israeli developers at the Technion IIT , rewrote the parser in 1997 and formed the base of PHP 3, changing the language's name to the recursive initialism PHP: Hypertext Preprocessor. The development team officially released PHP/FI 2 in November 1997 after months of beta testing. Public testing of PHP 3 began and the official launch came in June 1998. Suraski and Gutmans then started a new rewrite of PHP's core, producing the Zend Engine in 1999. [5] They also founded Zend Technologies in Ramat Gan , Israel, which actively manages the development of PHP. In May 2000, PHP 4, powered by the Zend Engine 1.0, was released. The most recent update released by The PHP Group, is for the older PHP version 4 code branch which, as of January 2008 , is up to version 4.4.8. PHP 4 will be supported by security updates until August 8, 2008. [6] On July 13, 2004 , PHP 5 was released powered by the new Zend Engine II. PHP 5 included new features such as: [7] • Improved support for object-oriented programming • The PHP Data Objects extension, which defines a lightweight and consistent interface for accessing databases • Performance enhancements • Better support for MySQL and MSSQL • Embedded support for SQLite • Integrated SOAP support • Data iterators • Error handling via exceptions Currently, PHP 5.x is the only stable version that is being actively developed; active development on PHP 4 ceased at the end of 2007 . However, critical security updates for PHP 4 will be provided until August 8, 2008. [8] PHP 6 is currently under development, and is slated to release in conjunction with the decommission of PHP 4.[citation needed] As a result of the GoPHP5 initiative, many high profile open source projects ceased to support PHP 4 in new code as of 5 February 2008. [9] PHP is a widely-used general-purpose scripting language that is especially suited for Web development and can be embedded into HTML. PHP generally runs on a web server , taking PHP code as its input and creating Web pages as output. However, it can also be used for command-line scripting and client-side GUI applications. PHP can be deployed on most web servers and on almost every operating system and platform free of charge. The PHP Group also provides the complete source code for users to build, customize and extend for their own use. PHP primarily acts as a filter . The PHP program takes input from a file or stream containing text and special PHP instructions and outputs another stream of data for display. From PHP 4, the PHP parser compiles input to produce bytecode for processing by the Zend Engine , giving improved performance over its interpreter predecessor. PHP 5 uses the Zend Engine II. Originally designed to create dynamic web pages, PHP's principal focus is server-side scripting . While running the PHP parser with a web server and web browser , the PHP model can be compared to other server-side scripting languages such as Microsoft 's ASP.NET system, Sun Microsystems' JavaServer Pages , and mod perl as they all provide dynamic content to the client from a web server. To more directly compete with the "framework" approach taken by these systems, Zend is working on the Zend Framework - an emerging (as of June 2006) set of PHP building blocks and best practices; other PHP frameworks along the same lines include CakePHP, PRADO and Symfony. The LAMP architecture has become popular in the Web industry as a way of deploying inexpensive, reliable, scalable, secure web applications. PHP is commonly used as the P in this bundle alongside Linux, Apache and MySQL , although the P can also refer to Python or Perl . PHP can be used with a large number of relational database management systems , runs on all of the most popular web servers and is available for many different operating systems . This flexibility means that PHP has a wide installation base across the Internet; As of April 2007 , over 20 million Internet domains were hosted on servers with PHP installed. [10] The number of installations is different from the number of sites actually using those installations, but this statistic does reflect the popularity of PHP. Examples of popular open source server-side PHP applications include phpBB, WordPress , and MediaWiki. PHP also provides a command line interface SAPI for developing shell and desktop applications, daemons, log parsing, or other system administration tasks that have traditionally been the domain of Perl, Python, awk , or shell scripting. [11] PHP provides bindings to GUI libraries such as GTK+ (with PHP-GTK), Qt with PHP-Qt and text mode libraries like ncurses in order to facilitate development of a broader range of cross-platform GUI applications. As with many scripting languages, PHP scripts are normally kept as human-readable source code, even on production webservers. While this allows flexibility, it can raise issues with security and performance. Encoders hinder source code reverse engineering . Encoders fall broadly into two types; those that hide source code and those that compile code into "optcode."[citation needed] The downside of this latter approach is that a special extension has to be installed on the server in order to run encoded scripts, however the approach of encoding compiled code and use of an extension offers typically the best performance, security and opportunity for additional features that may be useful for developers. Compiled code solutions may exploit the potential for increased security through the use of their own execution engine, although some simpler solutions rely on the regular PHP engine to execute the compiled code. The most commonly used packages for source code protection are from Zend Technologies and ionCube Ltd. Code optimizers improve the quality of the compiled code by reducing its size and making changes that can reduce the execution time and improve performance. The nature of the PHP compiler is such that there are often many opportunities for code optimization. Accelerators offer performance gains by caching the compiled form of a PHP script in shared memory to avoid the overhead of parsing and compiling the code every time the script runs. They may also perform code optimization to provide increased execution performance. Both commercial (e.g. Zend Platform) and open source accelerators (e.g. xcache, eAccelerator, APC) are available. The PHP Extension and Application Repository (PEAR) project aims to provide reusable libraries and components for PHP development. PEAR projects are usually written in PHP code using the Object-oriented programming paradigm. PHP has a formal development manual that is maintained by the free software community . In addition, answers to many questions can often be found by doing a simple internet search. PHP users assist each other through various media such as chat, forums, newsgroups and PHP developer web sites. In turn, the PHP development team actively participates in such communities, garnering assistance from them in their own development effort (PHP itself) and providing assistance to them as well. There are many help resources [14] available for the novice PHP programmer.