logo
Apache Lounge
Webmasters

 

About Forum Index Downloads Search Register Log in RSS X


Keep Server Online

If you find the Apache Lounge, the downloads and overall help useful, please express your satisfaction with a donation.

or

Bitcoin

A donation makes a contribution towards the costs, the time and effort that's going in this site and building.

Thank You! Steffen

Your donations will help to keep this site alive and well, and continuing building binaries. Apache Lounge is not sponsored.
Post new topic   Forum Index -> Building & Member Downloads View previous topic :: View next topic
Reply to topic   Topic: PHP Win64 (for Apache 2.2 Win64) - Development Page Previous  1, 2, 3, 4, 5  Next
Author
PaRK_7677



Joined: 01 Jun 2006
Posts: 65
Location: Missouri

PostPosted: Mon 31 Jul '06 18:34    Post subject: Reply with quote

Jorge wrote:
Seems to be because the vs 2005 pro is vastly different from vs 2005 free or std
That's a shame. I'd still be interested in seeing the config.txt or build.txt logs.

Quick update: I fixed the socket closing bug that caused PHP to crash (and the web server a lot of the time) when a socket can not be opened. I just updated the release a couple of days ago so I'm going to try to get some more extensions or fix problems for another release later.
Back to top
Jorge



Joined: 12 Mar 2006
Posts: 376
Location: Belgium

PostPosted: Mon 31 Jul '06 18:48    Post subject: Reply with quote

PaRK_7677 wrote:
Jorge wrote:
Seems to be because the vs 2005 pro is vastly different from vs 2005 free or std
That's a shame. I'd still be interested in seeing the config.txt or build.txt logs.

Quick update: I fixed the socket closing bug that caused PHP to crash (and the web server a lot of the time) when a socket can not be opened. I just updated the release a couple of days ago so I'm going to try to get some more extensions or fix problems for another release later.


Unfurtuantly it will have to wait till the end of august.
I'll be away to swiss for 2 weeks and need to do a lot of work in this week Sad
Back to top
garyjamesstanton



Joined: 31 Jul 2006
Posts: 3
Location: UK

PostPosted: Mon 31 Jul '06 20:01    Post subject: php zip Reply with quote

Hey guys, anyone know if there is an x64 version of php_zip.dll ? Really need one, got everything else running great.
Back to top
PaRK_7677



Joined: 01 Jun 2006
Posts: 65
Location: Missouri

PostPosted: Tue 01 Aug '06 5:12    Post subject: Re: php zip Reply with quote

garyjamesstanton wrote:
Hey guys, anyone know if there is an x64 version of php_zip.dll ? Really need one, got everything else running great.
I'm glad everything is working out so far.

I have a php_zip.dll built, but inital tests don't look too great this first round. I don't use the extension so my code may just be out of wack. Can you send me a sample of code that you're going to be using with it? Something simple like opening the ZIP and listing files would be good.

I'm working on a few other extensions that aren't part of the PHP package but rather PECL collection (where php_zip.dll came from). Hopefully I can have enough substantial work done to release the next distribution sometime soon.

Thanks

@Jorge
Good luck with getting the work done. I'll probably have to slow development down too once school starts.
Back to top
DomZ



Joined: 26 Jul 2006
Posts: 6

PostPosted: Tue 01 Aug '06 9:24    Post subject: Reply with quote

Please Park_7677, can you try to compile adodb C lib ?
(i have a 32bit machine and my server is a 64bit)

adodb is an abstraction layer class and the C lib is for optimise data retriving with large recordset.

http://phplens.com/lens/dl/adodb-ext-504.zip

I can send you a code for testing.

Thanks a lot
Back to top
garyjamesstanton



Joined: 31 Jul 2006
Posts: 3
Location: UK

PostPosted: Tue 01 Aug '06 12:34    Post subject: zip Reply with quote

Thanks PaRK_7677, here is a coding example which I use on my site

<?php

function extractzip($zipdir,$zipname,&$numfiles,&$filenames){

$numfiles=0;
$zip = zip_open($zipdir.$zipname);

if ($zip) {
while ($zip_entry = zip_read($zip)) {

$file = basename(zip_entry_name($zip_entry));

if (!is_dir($file)) {

$fp = fopen($zipdir.basename($file), "w+");

if (zip_entry_open($zip, $zip_entry, "r")) {
$buf = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));
zip_entry_close($zip_entry);
}

fwrite($fp, $buf);
fclose($fp);


$filenames[$numfiles]=$file;
$numfiles++;

}


}
zip_close($zip);
}



}



?>
Back to top
James Blond
Moderator


Joined: 19 Jan 2006
Posts: 7298
Location: Germany, Next to Hamburg

PostPosted: Tue 01 Aug '06 14:35    Post subject: Reply with quote

To make that easier and with more documentation you should use PEAR::TAR (can be found on pear.php.net).
it supports many compression methods.
Back to top
garyjamesstanton



Joined: 31 Jul 2006
Posts: 3
Location: UK

PostPosted: Tue 01 Aug '06 17:39    Post subject: Zip Reply with quote

Is PEAR::TAR useable in PHPx64?
Back to top
PaRK_7677



Joined: 01 Jun 2006
Posts: 65
Location: Missouri

PostPosted: Tue 01 Aug '06 19:04    Post subject: Reply with quote

@DomZ

I got it compiled. Email me at park[@]fusionxlan.com (remove []) and I'll send it to you to test because I have no prior experience with it and I looked at the sample script included but it requires some setup.

@garyjamesstanton

The php_zip.dll extension seems to work fine. Again I've never used it extensively but the example script works fine. (I was not double backslashing the paths, which they needed). If you want the DLL to test before the next release just email me at park[@]fusionxlan.com (remove []).
Back to top
PaRK_7677



Joined: 01 Jun 2006
Posts: 65
Location: Missouri

PostPosted: Thu 03 Aug '06 1:07    Post subject: Reply with quote

Here is a list of updates and extensions set to release in the next distribution:

PHP Core Changes:

Fixed remote socket closing bug. Opening a remote socket would crash PHP (and most likely the web server) if the file does not exist.
Code:
echo file_get_contents("http://www.apachelounge.com"); // Returns the contents of Apache Lounge index.

Code:
echo file_get_contents("http://www.unexistingdomain.com"); // Crashes PHP and web server.


64-bit Extensions:

ADOdb (php_adodb.dll) - Database Abstraction Library for PHP supporting several DB types.

APC (php_apc.dll) - Robust framework for caching and optimizing PHP intermediate code.

BCompiler (php_bcompiler.dll) - BCompiler enables you to encode your scripts in phpbytecode, enabling you to protect the source code.

CVSClient (php_cvsclient.dll) - pserver client extension. Current version has read-only, diff, and log support.

ID3 (php_id3.dll) - Functions to read and write ID3 tags in MP3 files.

Runkit (php_runkit.dll) - Replace, rename, and remove user defined functions and classes. Define customized superglobal variables for general purpose use. Execute code in restricted environment (sandboxing).

Win64PS (php_win64ps.dll) - Utilizes PSAPI (Process Status Helper) to get information about global memory usage and process specific memory and cpu time utilization. (EXACT SAME AS win32ps, just changed to win64)

YAZ (php_yaz.dll) - Implements a Z39.50 client for PHP using the YAZ toolkit.

ZIP (php_zip.dll) - An extension to create, modify and read zip files.

If you want an extension to be included, please let me know! If I don't know what's needed/wanted then I can't make an effort to build it. Can't guarantee everything requested will be built however.
Back to top
James Blond
Moderator


Joined: 19 Jan 2006
Posts: 7298
Location: Germany, Next to Hamburg

PostPosted: Thu 03 Aug '06 10:18    Post subject: Re: Zip Reply with quote

garyjamesstanton wrote:
Is PEAR::TAR useable in PHPx64?

PEAR is a script collection. So it runs under every PHP installation above PHP 4.3.x

Quote:

Opening a remote socket would crash PHP

Did you post that bug on bugs.php.net ??

If the remote connection from file_get_contents don't work you have to create a controll constuct.
Code:

$host = "apachelounge.com";
$socket = "";
 @$socket = fsockopen("$host", 80, $errno, $errstr, 15);
 if(!$socket) {
  $socket = print("No connection to $host");
 } else {
  fclose($socket);
  $socket = echo file_get_contents("http://". $host);
 }
Back to top
DomZ



Joined: 26 Jul 2006
Posts: 6

PostPosted: Thu 03 Aug '06 18:33    Post subject: Reply with quote

PaRK_7677 wrote:

ADOdb (php_adodb.dll) - Database Abstraction Library for PHP supporting several DB types.


That's running well for me Wink
Back to top
PaRK_7677



Joined: 01 Jun 2006
Posts: 65
Location: Missouri

PostPosted: Thu 03 Aug '06 20:10    Post subject: Reply with quote

James Blond wrote:
Quote:

Opening a remote socket would crash PHP

Did you post that bug on bugs.php.net ??

If the remote connection from file_get_contents don't work you have to create a controll constuct.
Code:

$host = "apachelounge.com";
$socket = "";
 @$socket = fsockopen("$host", 80, $errno, $errstr, 15);
 if(!$socket) {
  $socket = print("No connection to $host");
 } else {
  fclose($socket);
  $socket = echo file_get_contents("http://". $host);
 }

I use code very similar to what I've posted above. It works on PHPx32 but not on PHPx64. Thus, I have a problem only in x64. No, I have not reported it. My reasoning is because the code DOES work for 32-bit PHP distributions. PHP.net (as far as I know) doesn't support 64-bit distributions so if I go in and post that it doesn't work they will say it does (because as far as they are concerned it does!) I have found nobody really that does compile PHP in x64, just me. I can't confirm that it's a problem if no one else tests it and returns the same results. It my just be the means I've taken to get PHPx64 to compile. Who knows this early in development. The good news is that I've fixed it and it works wonderful so far!


DomZ wrote:
PaRK_7677 wrote:

ADOdb (php_adodb.dll) - Database Abstraction Library for PHP supporting several DB types.


That's running well for me Wink

Thanks for the update Smile I was hoping it did!

garyjamesstanton also seems to be having great success with php_zip.dll. I checked out his site that he uses PHPx64 (and x64 php_zip.dll) and it works well. I didn't see anything wrong as a normal user!
Back to top
PaRK_7677



Joined: 01 Jun 2006
Posts: 65
Location: Missouri

PostPosted: Mon 07 Aug '06 22:30    Post subject: Reply with quote

Released a new version today (Aug 07, 2006):

http://www.fusionxlan.com/PHPx64/php-5.1.4-2006-08-07.zip - 10.3 MB

The main addition are the extensions:

ADOdb (php_adodb.dll)
APC (php_apc.dll)
BCompiler (php_bcompiler.dll)
CVSClient (php_cvsclient.dll)
ID3 (php_id3.dll)
PDFLib (php_pdflib.dll)
Runkit (php_runkit.dll)
SSH2 (php_ssh2.dll)
Win64PS (modified version of Win32PS) (php_win64ps.dll)
YAZ (php_yaz.dll)
ZIP (php_zip.dll)


I encourage everyone to at least update their php5ts.dll that fixes the remote socket crash!
Back to top
jawrat



Joined: 14 Aug 2006
Posts: 6
Location: US

PostPosted: Mon 14 Aug '06 22:08    Post subject: php_mssql.dll ??? Reply with quote

Greetings,

Park, you asked what modules would be helpful? I have a serious need for the php_mssql.dll so I can talk to my sql server box. I am currently running a 32 bit w2k3 server in a VM in order to run a data migration script which has to call both a mysql db and the new sql server 2k5 db. If i could run it on the main x64 box, it'd be o so much faster and simpler. (and i'd be o so grateful!)

Is this module a possibility?

Thanks in advance...
Back to top
PaRK_7677



Joined: 01 Jun 2006
Posts: 65
Location: Missouri

PostPosted: Tue 15 Aug '06 4:14    Post subject: Re: php_mssql.dll ??? Reply with quote

Hi Jawrat.

Unfortunately Microsoft has made it difficult to develop a 64-bit version of the php_mssql.dll extension. The extension relies on a library that is being phased out and I haven't found a 64-bit version (it's possible that it won't ever exist).

Quote:
DB-Library

...
Do not use DB-Library or Embedded SQL to develop new applications.
...
SQL Server 2005 does not include the DB-Library DLL required to run these applications. To run DB-Library or Embedded SQL applications you must have available the DB-Library DLL from SQL Server version 6.5, SQL Server 7.0, or SQL Server 2000.

The last line says that the last time it was released for development was with SQL 2000. The only 64-bit version of SQL 2000 is for Itanium processors, not AMD64 (which is what this PHP runs on).

To make a long answer longer, it's doubtful that MSSQL extension will exist any time soon. One of the following would have to happen to make it possible:

* 64-bit DB-Library is made available from MS
* PHP MSSQL extension is built on the new APIs that MS is moving to
* DB-Library becomes open-source which I could try to port to 64-bit.

Sorry. There's nothing I can do from my position.
Back to top
jawrat



Joined: 14 Aug 2006
Posts: 6
Location: US

PostPosted: Tue 15 Aug '06 5:11    Post subject: Reply with quote

Wow, thanks for the reply/heads up.

You don't think there's a way to use a generic odbc driver to talk to sql server, do you? (assuming such a driver could be ported to x64)
Back to top
PaRK_7677



Joined: 01 Jun 2006
Posts: 65
Location: Missouri

PostPosted: Tue 15 Aug '06 5:52    Post subject: Reply with quote

jawrat wrote:
Wow, thanks for the reply/heads up.

You don't think there's a way to use a generic odbc driver to talk to sql server, do you? (assuming such a driver could be ported to x64)


A few posts up DomZ asked for an extension called ADOdb (php_adodb.dll). According to http://adodb.sourceforge.net/ it supports MS SQL. I don't have MS SQL server to try it but DomZ said it works for him (not sure which DB type he is using).

Check out http://phplens.com/adodb/code.initialization.html#dsnless for some examples.

Code:
   $db =& ADONewConnection('mssql');
   $db->Execute("localhost', 'userid', 'password', 'northwind');


I can't give you specifics because I've never used the extension but I hope the linked websites are enough. It's no fun to have to redo the code or learn a new extension but if it works it's better than being stranded with nothing!
Back to top
jawrat



Joined: 14 Aug 2006
Posts: 6
Location: US

PostPosted: Tue 15 Aug '06 18:27    Post subject: Reply with quote

I tried it, but for some reason I can't get it to play nice. oh well.
Back to top
PaRK_7677



Joined: 01 Jun 2006
Posts: 65
Location: Missouri

PostPosted: Tue 15 Aug '06 19:05    Post subject: Reply with quote

jawrat wrote:
I tried it, but for some reason I can't get it to play nice. oh well.

I was looking through the code and it looks like ADOdb still requires the MSSQL extension to be loaded. Guess it won't work. Sad

I don't know of any other PHP extension that could be used. Maybe someone else does. I checked PHP6 CVS and the MSSQL extension there still relies on the older libraries. Looks like it will be a while yet before there's a re-write.

Sorry I wasn't able to help.
Back to top


Reply to topic   Topic: PHP Win64 (for Apache 2.2 Win64) - Development View previous topic :: View next topic
Post new topic   Forum Index -> Building & Member Downloads Page Previous  1, 2, 3, 4, 5  Next