Catégorie: "PHP"

Rasmus: "I don't like SOAP"

At PHP Forum, Rasmus wisefully explained that SOAP is intrinsically broken because it's too complex... just as anything that takes more than 20 minutes to understand.

When it comes to webservices, I myself tend to prefer XML-RPC ("Does distributed computing have to be any harder than this? I don't think so.")... and sometimes I wonder wether REST would be a nice alternative...

PHP: why use DOM/XML writer functions?

There's one thing I was wondering about: why would you actually want to use the DOM/XML writing functions of PHP to generate XML? I mean: we've been generating HTML without specific functions for over 10 years, so why would we need a library to build a DOM tree instead of outputting XML directly??

Well... I got an answer at PHP Forum: it makes sure your XML is well formed when you spit it out!

Ha! I should have thought about it! :roll:

Now I'm wondering if I should be using this as a replacement for echo in order to make sure I generate well formed XHTML all the time... ;) I mean... generating a DOM tree would be overkill, but generating the XHTML code on the fly with XMLwriter might actually work out pretty well...


Cacheing built into PHP?

The PHP Core Team is meeting this week to decide wether or not there should be some cacheing built into the next major release of PHP. (I guess that would be PHP 6).

I definitely hope the answer will be YES since this has been available on others platforms for ages (J2EE, ColdFusion, ASP...) and it's really missing when you want your app/site/service to scale to large numbers of users.

Furthermore, once they decide to include cacheing, they still have to decide which cache technology they'll build in.

There are many add-ons/plugins to PHP which do cacheing, but it's important to keep in mind that there are actually 3 different kinds of cacheing involved here:

  • Cacheing the .php files in memory, so you don't access the disk everytime you include _header.php!
  • Cacheing the compiled opcode for those files, so you don't have to recompile them all at *each* request!
  • Cacheing arbitrary data from inside the script, so you can reuse it on subsequent requests without recomputing everything

There is one PECL extension that manages all of these 3 cacheing forms: APC. (Note: precompiled for Windows here). I'll bet on that one! Not only because I think it's doing the job as it should be done (easy setup, clean function syntax and everything), but also because Rasmus is already involved on that one's development team! ;)

Anyway, I think it's really important for PHP to standardize on some cacheing mecanism so we can design our applications to take advantage of it, no matter what host you'll be running it on.

The main reason we don't yet use shared memory data cacheing in b2evolution, is precisely because there is no standard that will be broadly available on hosts. Of course, we could still have included our own PHP class writing cache files, but that's bound to be less efficient than shared memory cacheing!

[Edit: the big 'no' argument to including cacheing would be that because APC uses shared memory, it kind of breaks PHP's "shared nothing" architecture. With shared memory it is so much more likely that a small error will corrupt something that might eventually cause a larger crash... So, be bottom line is that introducing a shred memory architecture introduces a potential weakness, do we want that?]

PHP Forum Paris 2005

PHP Forum Paris 2005 Logo

I've spent the last two days at PHP Forum Paris 2005. Very interesting stuff! I'll try to blog the most important facts (IMHO) over the week-end...

But, now when you think about it, I've been there last year also... Very interesting stuff also... And I still haven't blogged a line about it! :roll:

But it doesn't matter, I still have my notes from last year... they happen to be in the same notepad as those from this year! Guess I haven't used much paper for the last year... :P


Recherchons développeur PHP expérimenté (H/F) - CDI

Voilà voilà, on recrute à nouveau:

Développeur PHP MySQL (LAMP) expérimenté (H/F)

Vous avez 2 ans d'expérience minimum en PHP orienté objet et vous maîtrisez parfaitement SQL (MySQL).
Vous avez une bonne connaissance de XHTML + CSS et des standards web.
Vous êtes capable de lire et écrire des documentations techniques en anglais.
Une expérience significative de JavaScript (Mozilla + IE) ou mieux: AJAX, sera un plus.
Lieu de travail: 92240 Malakoff (Métro Etienne Dolet).
Salaire: de 35 à 45 K€ selon expérience.
Contrat: CDI (Freelance et SSII s'abstenir)

Si ça vous intéresse de venir bosser avec moi, n'hésitez pas à me contacter.

C'est une petite boite, une start-up version 2.0 en fait (les "cash burning" en moins). C'est le début, pour l'instant on est 4. Nous développons une application louée à nos clients en mode ASP. Nous participons également activement à différents projets open-source, notamment evocore/b2evolution qui constitue le framework de notre application.

A ce stade du projet nous recherchons exclusivement des développeurs expérimentés, capables de lire et de comprendre du code existant dans une base source de plus de 400 fichiers imbriqués, une hierarchie de classes complexe et une base de données relationnelle de plus d'une centaine de tables liées.

Vous améliorerez des modules existants, en développerez de nouveaux. Vous serez également amenés à intégrer l'application avec les systèmes existants de nos clients.

Cette offre est postée en exclusivité ici pour commencer. Tous commentaires bienvenus.