php.js - PHP VM with JavaScript. Simply move PHP execution to the browser. Hey, then the security vulnerabilities in PHP will only have local effects for the user and no longer for the server!
php
The unbearable finality of pixel space. I tried the linked archiving tool for Flickr once and it works really well. I can even forgive the PHP for that. I have also occasionally pushed Flickr images into this blog (the "Neulich auf Flickr" posts), but the advantage of this backup script is that the structure and even the Flickr access rights are preserved. Unfortunately, albums and sets are not yet backed up, only the photostream. And the layout is very spartan. But maybe this would be a candidate to play with Bootstrap 2.0 and spice up the whole thing a bit.
Phalanger 3.0 | PHP compiler for .NET. Hmm, completely passed me by - there is a PHP compiler for .NET, which makes PHP a fully integrated .NET language. And this also runs with Mono. And it's so complete that you can run a current Wordpress under mod-mono with it - and according to benchmarks, the performance goes up significantly. Maybe I'll take a look at it in a quiet hour.
The Xavisys WordPress Plugin Framework - Xavisys. Interesting if you want to build your own plugins for WordPress, as it takes care of some of the standard tasks and makes the code simpler.
asuhan / happy. Also not uninteresting: a PHP interpreter and compiler in Python based on the PyPy toolchain. Okay, it's not a showstopper, I don't think I've often had the question "how can I execute PHP code in Python" - but for example, if a site based on Django wants to provide users with PHP as a scripting language, something like this could become quite interesting - PHP is after all one of the best-known scripting languages for the web, but Python with some frameworks is simply much more interesting from a production perspective.
Introduction to Pharen. A Lisp that compiles to PHP. Weird. Okay, could be practical if the host only offers PHP as a server language. But still. Weird.
Display photos from Tumblr (using JSON method) is PHP, but I should be able to easily rebuild this in JavaScript and then run it only client-side.
integer overflows - and how the PHP maintainers imagine preventing this ... is anyone still wondering about the many problems in the PHP interpreter? Maybe it's time for some of the maintainers there to learn how to program?
New database class - HyperDB - that's what makes it possible to run WordPress in data centers under wordpress.com. Nice.
SQLite Introduction - only linked because I might need it for a trivial project (PHP5 and SQLite - igh, I'll have to clean my keyboard afterwards).
Retired from security@php.net - "The reasons for this are many, but the most important one is that I have realised that any attempt to improve the security of PHP from the inside is futile".
WPHP - Call PHP from Python via a FastCGI server. This could, for example, integrate PHP into Django.
WordPattern - probably the next one for today?
Why I Don't Like PHP Software
Wordpress is indeed one of the better systems written in PHP. And what happens? There are several sloppy programming practices found within it. Yes, I know, this happens in other languages too. The point is: the Wordpress programmers are relatively well qualified and relatively careful in their work - and yet such problems occur. Among other things, because in PHP the sources lie within the server root, meaning files that are actually only used internally are accessible via HTTP. And because PHP solutions do not inherently perform input validation and proper text quoting. No, sorry, but I simply do not like such a mess.
Hurring.com: Code: Python: PHP Serialize implemented in Python - Deserialize PHP data in Python. Could be interesting if I want to migrate further sites from PHP to Django and, for example, access Wordpress settings.
What’s New in WordPress 2.0? · Asymptomatic - even though I will soon be leaving WordPress, it's always interesting to see what's going on there. Besides, at least the Metaeule will certainly continue to run with WordPress.
Critical Vulnerability in Content Management System Mambo
PHP is increasingly becoming a security dump:
Not always does disabling register_globals in PHP increase security. Sometimes this opens up a vulnerability. This is also the case with the Content Management System Mambo, which, according to a posting on the security mailing list Full Disclosure, contains a vulnerability that allows attackers to execute their own code on the server.
This is certainly due to the fact that there is hardly any language - apart perhaps from Perl - that carries as much cruft as PHP. The result shows itself again and again in esoteric problems that even catch people who should be prepared for such things based on their experience.
the strange tendency of PHP programmers to eval
Vulnerabilities in PHP modules endanger (once again) numerous web applications - and once again it's XML-RPC. They are still using eval - and that's for evaluating tags. Seriously? Sorry, folks, but this is just ridiculous - eval has already blown up in your face, why weren't all those calls removed back then? Or at least properly secured?
And people wonder why I don't have much faith in PHP software ...
Keith Devens - Weblog: I hate PHP - August 13, 2003 - he also doesn't like PHP
http://n3dst4.com/articles/phpannoyances/ - he doesn't like PHP either.
Spyced: Why PHP sucks - a rather good analysis of what is rather annoying about PHP.
Why PHP sucks - and yet another person who doesn't like PHP.
Hardened-PHP project
No idea how good this really is, but the Hardened-PHP project already sounds quite nice. Due to the high prevalence of PHP for web applications, it is a central point of entry for servers. Should put this on my ToDo list.
PHP-Serialize for Python
Hurring.com : Code Vault : Python : PHP-Python Serialize : v0.3b is an implementation of the PHP serialize() stuff in Python. Very practical for WordPress: often serialized structures are stored in the options that you can resolve this way - you can write tools that work directly on the database, but are written in Python. The author has done the same for Perl - you can thus push simple data structures back and forth between Python, Perl and PHP.
wp-cache-2 and PHP Accelerator
If you want to use the very useful caching plugin wp-cache-2, you need to be careful: it is not compatible with the PHPAccelerator. Unfortunately, you cannot use both together, only one of the two works. Quite annoying, because they address different elements - the plugin caches the output, the accelerator caches the precompiled PHP. Therefore, the accelerator would also help the cache system, since the cache system is written in PHP ...
Anyway, I have activated the plugin on the WordPress blogs I manage. Especially the Metaeule could benefit from this in the long run. The caching is currently set to 20 minutes, so that changes in the database do not hang around for too long before everyone can see them. Let's see what oddities occur during operation.
One thing I expected not to work properly anymore is the Plugin Popularity Contest - this counts how often a post has been called up. This happens much less frequently due to the caching and therefore the numbers are no longer meaningful. Ratings based on comments and trackbacks are of course still possible, but the page views are useless. A pity actually, but in return I get much lower server load and much higher delivery rates: with activated wp-cache I have a load of just under 4 with 20 competing massive accesses and shovel just under 50 requests per second. Without wp-cache I have a load of over 9 and only just manage 5 requests per second.
So with wp-cache-2 only half the load and ten times the performance. For that I gladly sacrifice the Popularity Contest.
A second plugin that I noticed: Search Hilight (standard plugin from WordPress) doesn't work. Logically - it colors search terms that are determined from the referrer of a search engine. And referrers do not go into the cache signature. A pity, it was a visually nice gimmick. But on the other hand not really that important.
Popularity Contest
Alex King has a nice plugin for WordPress: the Popularity Contest. This collects and calculates various values for posts and determines which are the most popular. I've integrated it into my sidebar (below the images). In addition to the tags for embedding in the template, it also provides a wealth of information on a subpage of the WordPress admin homepage. There you can view popularity by category or type of metric. Let's see how the values develop.
Ping TopicExchange from WordPress
Phillip Pearson has written a WP-plugin that simplifies simple pinging of TopicExchange. TopicExchange is essentially just a list of trackback targets with its own wiki for each trackback target. The idea is to provide a simple group blogging function that users can access through their own blogs.
Sparkline PHP Graphing Library provides small, compact graphics that fit well into text - ideal for example to better visualize trend data.
Striped Calendar for WordPress
First plugin from my picture blog (now out) is the Strip Calendar. Basically a normal WordPress calendar - only not as a block for the sidebar, but as a strip to place it over the content. Since you usually have more space to waste in the length of a page than in the width and since someone might want to break with the rather worn-out format where the calendar is in a sidebar, you can now simply install the strip calendar. The code for installation is trivial:
< ?php get_strip_calendar(); ?> ```
Just put this in the header.php or wherever you want the calendar. Done (of course first unpack the plugin to wp-content/plugins/ and activate it in the administration!).
Virtual Hosts with WordPress
The Vhost Plugin is my current favorite of the entries for the WordPress Plugin Competition. With this plugin, you can bind categories to virtual hosts - when this host is accessed, the appropriate category is automatically displayed and optionally, a different template can be applied to this combination.
I can think of a whole range of ideas spontaneously - for example, I could put my Bananenrepublik under it and present my rants as more independent content. Or I could finally run my photographic entries under one of my photo domains again. I think I'll play around with the plugin soon.
Another funny feature - but rather uninteresting for me - is the possibility to restrict a user to a VHost (and thus to a category) and set up a multi-blog platform on a WordPress installation. Could be quite funny for family blogs, for example.
Unfortunately, the installation is a bit tricky - you have to patch a few functions because there are bugs in the standard installation. With WP 1.5.1, this should hopefully be better.
The Studs MVC Framework is a port and extension of the Java Struts Framework to PHP. In doing so, frameworks initially map a J2EE-like basic structure for servlets in PHP. To me, that naturally sounds like fighting the devil with Beelzebub.
Tags from Terms
Jonathan Luster has released his Y! Terms Extraction Plugin for WordPress. It uses the Yahoo services to extract relevant keywords from a posting text and presents them as Technorati tags in the post. If anyone tries this out: I would be interested to know how well it works with German texts.
By the way, I would also be interested to know when blogg.de offers an API. I mean, it's about time to catch up with the features of Technorati and Yahoo, right?
class.jabber.php is a PHP class for programming Jabber services.
Agata Report is something like Crystal Reports, but for Linux and Open Source. Could be quite practical at times, especially since it can also generate reports that can easily run on a web server.
And for those who don't like or can't use Lisp, perhaps SAJAX - Simple Ajax Toolkit by ModernMethod - XMLHTTPRequest Toolkit for PHP can help, which supports not only PHP but also Io, Lua, Perl, Python, and Ruby.
PIXELPOST - Small Photoblog Software - looks quite nice, as do the demos. Fun is the small strip calendar in the demo - I think I'll do something like that for WordPress, it takes up significantly less space in the sidebar than the classic calendar. For someone who just wants to photoblog, PixelPost looks quite nice.
speed up WordPress l10n
New php-gettext, speed up WordPress l10n describes two quite simple measures to give WordPress a bit of a boost. Specifically, the gettext support is suboptimal - which affects every user of a non-English WordPress installation. Gettext is used to load the translations. With the mentioned patches, these areas are significantly accelerated, especially noticeable on individual pages (where the number of database accesses is smaller), but also, for example, on my homepage, this has resulted in a measurable acceleration.
Moderate trackbacks in general
For WordPress, there is a plugin that automatically sets trackbacks to moderated. However, this plugin uses additional database accesses (sets the moderation flag after the creation of the trackback), which is rather annoying for trackback spammers - every additional database access increases the system load. Therefore, I wrote my own version of it, which does not require any additional database accesses. The source is available here.
The Plugin API for WordPress lists actions and filters defined by WordPress. Currently being filled with content.
Apache2, php5-fcgi, php4-fcgi, mod_fastcgi HowTo
Apache2, php5-fcgi, php4-fcgi, mod_fastcgi HowTo provides everything you need to know to run PHP as an FCGI process. And even in German. The little bit of Apache2 in there can be mentally converted to Apache 1.3, the Apache is actually hardly affected.
FCGI offers, in combination with suexec, the possibility to run PHP per virtual host under a dedicated user and thus the possibility in shared hosting environments to set up files in a virtual host so that another user with his PHP cannot read them. You could even run the FCGI-PHPs in a chroot jail to isolate them even more.
In addition, FCGI is often significantly more resource-efficient for PHP, as fewer PHP processes can run than Apache processes and the Apache processes do not become so bloated. If you have many virtual hosts, this can lead to the FCGI processes catching up in number - but then you should consider whether the FCGI processes should not run better on a dedicated machine.
This would be exactly the right thing for simon, especially since I could then also allow PHP for the other users.
phpOpenTracker ist ein Live-Access-Auswerter für Webseiten. Er kann direkt in PHP-Anwendungen integriert werden oder über Webbugs (kleine unsichtbare Grafiken) aus statischen Webseiten gesammelt werden. Man kann damit ziemlich viel über das Benutzerverhalten in den Webseiten erkennen. Und bei Asymptomatic wird gerade an einem WP-Plugin dafür gestrickt, mit dem man die entsprechenden Auswertungen im WP-Backend zu sehen bekommt ...
eAccelerator ist ein weiterer PHP Accelerator. Er baut auf dem Turck mmCache Source auf, ist aber aktiv in der Entwicklung.
no status quo » RunPHP WordPress Plugin führt PHP-Code direkt in Postings aus. Damit kriegt man sowas wie < ?php echo "Makros"; ?> in Wordpress.
PECL :: Package :: APC - PHP caching System, Open Source (nicht so komische Stunts wie phpAccelerator und nicht so tot wie turck mmCache)
Glossary für WordPress
Ich habe ein kleines Wordpress Plugin geschrieben das ein Glossary ähnlich wie bei Radio Userland oder PyDS implementiert. Mit dem Glossary werden einfach Texte die durch | (Pipe) Symbole begrenzt werden durch einen Ersatztext (der auch XHTML Markup enthalten kann) ersetzt. Spart Tipperei ...
Das Plugin installiert eine kleine Managementseite im Wordpress-Backend, das ganze funktioniert also nur mit Wordpress 1.5 (oder evtl. 1.3). Die nötige Datenbanktabelle wird nach Aktivierung des Plugins automatisch erstellt beim ersten Zugriff auf die Managementseite.
GeSHi - Generic Syntax Highlighter :: Home - ein Syntaxhighlighter in PHP. Könnte ich benutzen wenn ich hier Sourcecode poste ...
( Syck ): YAML for Ruby, Python, PHP and OCaml - Noch ein YAML Parser und Emitter - dieser fokussiert auf Komplettheit, Schnelligkeit und Multiplattform
Embedding Gallery Into An Existing Community - Wie man Gallery in andere PHP-Seiten einbinden kann
PHP/SWF Charts - PHP Tool zur Erstellung von Graphen im Flash-Format
SourceForge.net: Project Info - DoXFS Document Management System - Dokumentenarchiv mit XFS und PHP-Frontend