PHP 5.0.0 Beta 1

Ye' old general discussion board. Basically, for everything that isn't covered elsewhere. Come here to shoot the breeze, shoot your mouth off, or whatever suits your fancy.
This forum is not for asking programming related questions.

Moderator: General Moderators

Post Reply
User avatar
Kriek
Forum Contributor
Posts: 238
Joined: Wed May 29, 2002 3:46 am
Location: Florida
Contact:

PHP 5.0.0 Beta 1

Post by Kriek »

The PHP development community is proud to announce the release of PHP 5 Beta 1. Both source packages, and a Windows build are available in the Downloads Section. A list of changes can be found in the ChangeLog file. Note this is a beta version. It should not be used in production or even semi-production web sites. There are known bugs in it, and in addition, some of the features may change (based on feedback).

» PHP 5.0.0 Beta 1
Switch to using Zend Engine 2, which includes numerous engine level improvements. A full list is available at http://www.php.net/zend-engine-2.php.
The SQLite (http://www.hwaci.com/sw/sqlite/) extension is now bundled and enabled by default. (Wez, Marcus, Tal)
Improved the speed of internal functions that use callbacks by 40% due to a new internal fast_call_user_function() function. (Sterling)
Completely Overhauled XML support (Rob, Sterling, Chregu, Marcus)
Brand new Simplexml extension
New DOM extension
New XSL extension
Moved the old DOM-XML and XSLT extensions to PECL
ext/xml can now use both libxml2 and expat to parse XML
Removed bundled expat
Removed the bundled MySQL client library. (Sterling)
New php.ini options:
"session.hash_function" and "session.hash_bits_per_character". (Sascha)
"mail.force_extra_paramaters". (Derick)
Improved the streams support: (Wez, Sarah, Ilia)
Improved performance of readfile(), fpassthru() and some internal streams operations under Win32.
stream_socket_client() - similar to fsockopen(), but more powerful.
stream_socket_server() - Creates a server socket.
stream_socket_accept() - Accept a client connection.
stream_socket_get_name() - Get local or remote name of socket.
stream_copy_to_stream()
stream_get_line() - Reads either the specified number of bytes or until the ending string is found.
Added context property to userspace streams object.
Added generic crypto interface for streams (supports dynamic loading of OpenSSL)
Added lightweight streaming input abstraction to the Zend Engine scanners to provide uniform support for include()'ing data from PHP streams across all platforms.
Added 'string.base64' stream filter.
Renamed stream_register_wrapper() to stream_wrapper_register().
Improved the GD extension: (Pierre-Alain Joye, Ilia)
imagefilter() - Apply different filters to image. (Only available with bundled GD library)
Antialiased drawing support:
imageantialias() - (de)active antialias
imageline() and imagepolygon() antialias support
Changed the length parameter in fgetss() to be optional. (Moriyoshi)
Changed ini parser to allow for handling of quoted multi-line values. (Ilia)
Changed get_extension_funcs() to return list of the built-in Zend Engine functions if "zend" is specified as the module name. (Ilia)
Changed array_search() to accept also objects as a needle. (Moriyoshi)
Changed ext/mcrypt to require libmcrypt version 2.5.6 or greater. (Derick)
Changed uniqid() parameters to be optional and allow any prefix length. (Marcus)
Added new iconv functions. (Moriyoshi)
iconv_strlen()
iconv_substr()
iconv_strpos()
iconv_strrpos()
iconv_mime_decode()
iconv_mime_encode()
Added misc. new functions:
ldap_sasl_bind(). (peter_c60@hotmail.com, Jani)
imap_getacl(). (Dan, Holger Burbach)
file_put_contents(). (Sterling)
proc_nice() - Changes priority of the current process. (Ilia)
pcntl_getpriority() and pcntl_setpriority(). (Ilia)
idate(), date_sunrise() and date_sunset(). (Moshe Doron)
strpbrk() - Searches a string for a list of characters. (Ilia)
get_headers() - Returns headers sent by the server of the specified URL. (Ilia)
str_split() - Breaks down a string into an array of elements based on length. (Ilia)
array_walk_recursive(). (Ilia)
array_combine(). (Andrey)
Added optional parameter to get_browser() to make it return an array. (Jay)
Added optional parameter to openssl_sign() to specify the hashing algorithm.(scott@planetscott.ca, Derick)
Added optional parameter to sha1(), sha1_file(), md5() and md5_file() which makes them return the digest as binary data. (Michael Bretterklieber, Derick)
Added optional parameter to mkdir() to make directory creation recursive. (Ilia)
Added optional parameter to file() which makes the result array not contain the line endings and to skip empty lines. (Ilia)
Added new range() functionality: (Ilia)
Support for float modifier.
Detection of numeric values inside strings passed as high & low.
Proper handle the situations where high == low.
Added encoding detection feature for expat XML parser. (Adam Dickmeiss, Moriyoshi)
Added missing multibyte (unicode) support and numeric entity support to html_entity_decode(). (Moriyoshi)
Added IPv6 support to ext/sockets. (Sara)
Added "ftp://" wrapper support to opendir(), stat() and unlink(). (Sara)
Added context options 'method', 'header' and 'content' for "http://" fopen wrapper. (Sara)
Added input filter support. See README.input_filter for more info. (Rasmus)
Fixed is_executable() to be available also on Windows. (Shane)
Fixed dirname() and strip_tags() to be binary-safe. (Moriyoshi)
Fixed bug #24098 (crash in pathinfo()). (Ilia)
Fixed bug #21985 and #22064 (various mb_send_mail() issues). (Moriyoshi)
Fixed bug #21600 (Assign by reference function call changes variable contents). (Zeev)
CONFIQ
Forum Commoner
Posts: 32
Joined: Fri Oct 18, 2002 3:39 pm
Location: Israel - Raanana

Post by CONFIQ »

wait, let me make this clear
- The SQLite (http://www.hwaci.com/sw/sqlite/) extension is now bundled and enabled by default. (Wez, Marcus, Tal)
- Removed the bundled MySQL client library. (Sterling)
So from now on, SQLite will be default DB and mysql library will be removed?
User avatar
BDKR
DevNet Resident
Posts: 1207
Joined: Sat Jun 08, 2002 1:24 pm
Location: Florida
Contact:

Post by BDKR »

CONFIQ wrote:wait, let me make this clear
- The SQLite (http://www.hwaci.com/sw/sqlite/) extension is now bundled and enabled by default. (Wez, Marcus, Tal)
- Removed the bundled MySQL client library. (Sterling)
So from now on, SQLite will be default DB and mysql library will be removed?
Yes. The reasons?

a) The MySQL client libraries have been GPL'd. That means people that make a living creating PHP / MySQL based solutions that they wish to remain proprietary are forced to buy a license from MySQL to get around the GPL stipulation that there code must be open.

This situation may change as there is talk between the PHP dev team and MySQL to work on a solution that may exempt PHP. It's still up in the air, but until a conclusion is reached, MySQL is no longer bundled.

b) SQLite is really not a database, but an SQL interface for a flat file. MySQL is overkill for most sites anyways. It's extremely fast and it can be run anywhere. The host doesn't need a database installed. So for most sites that don't really need all that a RDBMS can offer, or their host isn't capable of providing it, SQLite is really a great alternative. Good for hosts as well.

Cheers,
BDKR
User avatar
Stoker
Forum Regular
Posts: 782
Joined: Thu Jan 23, 2003 9:45 pm
Location: SWNY
Contact:

Post by Stoker »

In my opinion, MySQL is not doing anything wrong, they are actually doing their contribute to freing the world, at least for thos who free means free as in freedom as in FSF and Richard Stallmans philosophy, what the GPL is in existence for..

The bad boys here are Zend, their license on the Zend engine is strict, they do not want anyone else to make money by using their engine for an IDE debugger like their own proprietary software without giving them some money for it.. I won't blame them for doing this, as the worl is (still) a I-want-to-get-rich-fast type place where most take advantage of anything they can...

It just so happens that while MySQL goes in the free-for-everybody-world direction, Zend does not, so their licensing is not compliant.
)The MySQL client libraries have been GPL'd. That means people that make a living creating PHP / MySQL based solutions that they wish to remain proprietary are forced to buy a license from MySQL to get around the GPL stipulation that there code must be open.
Isn't this just confirming my statement? If you want to use all this stuff for free, FSF, The GPL, MySQL and Stallman does not want you to do so in the purpose of making something that is not free..

Vote for the free world! Contribute to the free world!
JPlush76
Forum Regular
Posts: 819
Joined: Thu Aug 01, 2002 5:42 pm
Location: Los Angeles, CA
Contact:

Post by JPlush76 »

unfortunatley it will be years before I can use PHP 5

clients webhosts usually dont like to upgrade versions until they are stable for a couple years at least.
User avatar
Stoker
Forum Regular
Posts: 782
Joined: Thu Jan 23, 2003 9:45 pm
Location: SWNY
Contact:

Post by Stoker »

couple of years? damn.. still on 4.0.6 then?
Even Debian Stable has a package newer than that (4.1.2)
User avatar
BDKR
DevNet Resident
Posts: 1207
Joined: Sat Jun 08, 2002 1:24 pm
Location: Florida
Contact:

Post by BDKR »

Isn't this just confirming my statement? If you want to use all this stuff for free, FSF, The GPL, MySQL and Stallman does not want you to do so in the purpose of making something that is not free..

Vote for the free world! Contribute to the free world!
There is a much more far reaching reason for Richard Stallman doing what he did. It's not just that he want's things to be free. The truth is that if an open society can provide it's own standards, language, tools, and operating systems, it can avoid corporate hegemony when anything you wanted to do or learn would require a huge cash outlay. He's talking about making a commodity of software so that everyone can have it. Does this sound like something Oracle and Microsoft want to? This is the beauty of OSS. It allows people to participate! There is a reason that third world countries are jumping on the band wagon too. It beats corporate hegemony from a foreign software maker!

That said, there is a reason that the LGPL exists too you know. Additionally, there is nothing wrong with making money. Zend is doing nothing wrong either. Trying to make a living. How much time would Zeev and Andi have to maintain the engine if they had to work for someone else? More power to 'em.

If making money was so bad, the LGPL wouldn't exist!

Now it's obvious that I agree that there is virtue to be found in the OSS and FSF movements, but just becuase someone slaps a GPL label on a client library doesn't mean they had the best of intentions. As a matter of fact, I feel my intentions are more in line with what you feel they should be. I released a small lib with the LGPL variant which means that a person is totally free to make money off my work. They are free to distribute it with their proprietary work. That's a lot more open and free then the GPL no?

For me, I've been using Linux since '97. Down here in Venezuela, I helped a lottery company with very little money get off the ground with the help of free software. I believe brother. That's the end of that!

Personally, it looks to me like MySQL has decided to ride the crest and eek out a little money from the hype. That's what I see. If you see something else, that's cool too, but don't run that 'absolute altruism' 'Workes of the world unite' routine on us! There is plenty of good and bad out there. What I feel we have here is a peculiar (read bad) use of something that is good in many ways. In other words, the problem isn't with the GPL or FSF or OSS, but instead with MySQL!

Thank you and Good night,
BDKR
veronicabend
Forum Newbie
Posts: 2
Joined: Thu Jul 03, 2003 7:21 am

Post by veronicabend »

I am really worried about this.
I have some sites online that need MySQL, they cannot use a flat file interface. Also, I would have to make lots of changes in the code to get it working with another database.

I hope a way can be found so we can keep MySQL the way it is with Php.

Is there any place we can make suggestions like this to the Php Development Team?

Regards,
Veronica
User avatar
BDKR
DevNet Resident
Posts: 1207
Joined: Sat Jun 08, 2002 1:24 pm
Location: Florida
Contact:

Post by BDKR »

veronicabend wrote:I am really worried about this.
I have some sites online that need MySQL, they cannot use a flat file interface. Also, I would have to make lots of changes in the code to get it working with another database.

I hope a way can be found so we can keep MySQL the way it is with Php.

Is there any place we can make suggestions like this to the Php Development Team?

Regards,
Veronica
I wouldn't worry about it too much Ver. It's a good likelyhood that what's up online now isn't using the GPL'd libs anyways. Besides, I really don't think it's going to have much of an affect on those that are just building web sites. The issue, it appears, will be where the client libraries are distributed with / as part of another proprietary work.

But as much as I know it hurts, if it gets too bad, there is Postgres and a host of other free databases that actually offer more than MySQL.

Have a good one V,
BDKR
User avatar
Stoker
Forum Regular
Posts: 782
Joined: Thu Jan 23, 2003 9:45 pm
Location: SWNY
Contact:

Post by Stoker »

I cant really say I have a religious belief in GPL nor that I know everything about it... LGPL has its purpose, but should not be used if not in competition according to FSF website info on it (the way I see it).
But, personally I do see MySQL's move as somewhat helpful to achieve some of FSF's vision, MySQL itself is GPL and they do it all "free and keep it free", the client libs have in the past been "Lesser keep-it-free", and many have taken advantage of that and implemented it all over the place. Zend, which make some of their money on proprietary software like their IDE/Debugger, Optimizer, Encoder and probably more stuff, all these products are involved with the Zend Engine and ultimately at the end (usage) PHP itself, so indirectly Zend is selling their products with all the functionality that PHP has, including MySQL support. If Zend/PHP's license does not comply with GPL, they should approach MySQL to purchase a development license of their client libs, I am sure MySQL is interrested in that, as their CEO commented in the lates Linux Magazine interview that one of their goals is to be very available and usable for anyone, GPL does not prevent that...

MySQL's intention may be to make some money on enterprise software including their database server and client libs, and still stay free for anyone else, I am sure their intention has nothing to do with getting a grip on PHP users..

Anyway, SQLite is an excellent product as well and likely sufficient for most home made websites out there :)
m3rajk
DevNet Resident
Posts: 1191
Joined: Mon Jun 02, 2003 3:37 pm

Post by m3rajk »

i've never heard of SQLite before. is it a full sql db? i'm creating a site right now that uses MySQL because it's free and php can interact quite nicely with it.

personally i think MySQL should get a kudos for that. they basically prevented people from charging for standing on their backs.

how would you like it if you came up with a revolutionary new db and then you made it free to people and they turned around and charged people for using products they make that utelize your db? you're never gonna see a cent of that money and now the product you wanted to have available to people is looked at as part of a different product that isn't readily available.


it's a similar thing with linux. you don't pay for the flavor of linux that you have, if you pay the company you pay for support.

that's what a GPL really does, at least from what i've seen, and that's what it's for (again, from my rather limited understanding).

the site i'm creating with friends plans on trying to get ti to pay for itself. but we don't wanna charge people for basic things, so we're already looking on things to develop after we get it up and running.. these things are additional SERVICES. not the use of the site or mysql per se, but what we give you above and beyond that. we rocognise that there's a connection between rateme sites and dating sites that we haven't seen explored before, so we're asking for interests upon sign up so that we can expand and have some sort of dating service that's above and beyond the normal rate me site. for that there will be a charge. there's also some other things we're thinking of and we figure that we want a range of things that wont add much of a space burden so that we can charge something ridculously small. ... we have a few things (i've only mentioned one) that we're thinking of. we figure when we have most ready we'll charge $2/month, $9/6months, $12/yr as the rate. the fee will be so small that it's really nothing much, unlike most other places we've seen that charge $15+/yr.

we figure fromthe sheer number of people we can get away with much less and still have it pay for itself. we don't expect this to be something that can ever suport us. but we'd like it to be self supporting at some point.


maybe i'm weird, but i think i see where MySQL is coming from and think MySQL support should stay
User avatar
Stoker
Forum Regular
Posts: 782
Joined: Thu Jan 23, 2003 9:45 pm
Location: SWNY
Contact:

Post by Stoker »

how would you like it if you came up with a revolutionary new db and then you made it free to people and they turned around and charged people for using products they make that utelize your db?
They are not doing that, they changed the license of the client libraries to GPL, before they where a lesser strict license that allowed anyone to use it inany way they wanted.
Post Reply