[PHP-DEV] Bug #12642 Updated: Loading php_oci8 fails

2001-08-10 Thread Thomas . Seuring

ID: 12642
User updated by: [EMAIL PROTECTED]
Reported By: [EMAIL PROTECTED]
Old Status: Feedback
Status: Open
Bug Type: OCI8 related
Operating System: Windows 2000
PHP Version: 4.0.6
New Comment:

Hello Jani,

I've tried as recommended the PHP_EXIF.DLL and and there comes an error, too. PHP 
without any extensions works without no problems.

The Line within PHP.INI looks like:

; Directory in which the loadable extensions (modules) reside.
extension_dir = C:\PHP\extensions\

For me it looks like the PHP.EXE from the distribution IIS (without DLL's in the 
package) won't fit with the DLL's from the 2nd distribution for Apache. Both for 
Windows.


Previous Comments:


[2001-08-09 16:59:21] [EMAIL PROTECTED]

Does PHP work if you disable every extension?
If so, try enabling ONLY this extension:

php_exif.dll  (it definately doesn't need any extra libs)

If it works, then try enabling php_oci8.dll too.
btw. What is your extension_dir line in php.ini?

--Jani




[2001-08-09 07:11:30] [EMAIL PROTECTED]

I'm not very familiar with the Dependency Walker. As far as I can see, there are no 
errors logged. But I can send you the DWI-File if you want to see the Image.



[2001-08-09 06:02:27] [EMAIL PROTECTED]

could you try opening php_oci8.dll in Dependency Walker 
(http://www.dependencywalker.com/)? does it report any problems?



[2001-08-09 05:56:01] [EMAIL PROTECTED]

The OCI.DLL is within C:\Oracle\Ora81\bin; 
which is in the PATH



[2001-08-09 04:47:46] [EMAIL PROTECTED]

which of the directories in your %PATH% contains oci.dll?



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/?id=12642


Edit this bug report at http://bugs.php.net/?id=12642edit=1


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Bug #12672 Updated: ifx_connect does not return when base not present

2001-08-10 Thread matjaz . ostroversnik

ID: 12672
User updated by: [EMAIL PROTECTED]
Reported By: [EMAIL PROTECTED]
Old Status: Feedback
Status: Open
Bug Type: Informix related
Operating System: Linux RH 6.2
PHP Version: 4.0.6
New Comment:

I've built the php4.0.7-dev as you suggested. There
is a lot of differences in ifx.ec file, but unfortunatelly
it doesn't work. Symptoms are the same.

I've checked on our production computer with 4.0.3pl1.
It's the same.

I am using gcc 2.95.3 with --enable-shared and --enable-threads. Which 
compiler/settings do you use ?

Previous Comments:


[2001-08-09 16:34:12] [EMAIL PROTECTED]

Oops. The correct url to snapshots is: http://snaps.php.net/

--Jani




[2001-08-09 16:33:43] [EMAIL PROTECTED]

I tried this with latest CVS and it works just fine.
ie. it gives an error for it.

Please try it: http://www.php.net/

--Jani




[2001-08-09 09:59:10] [EMAIL PROTECTED]

?
 echo (before\n);
 $id = ifx_connect(base,user,pass);
 echo (after\n);
?

if ifx is up you get
before
after
otherwise you get
before
(program does not return)



[2001-08-09 08:22:49] [EMAIL PROTECTED]

please include a sample script...



[2001-08-09 04:09:35] [EMAIL PROTECTED]

(command line mode)
if the database (i.e. informix) is not up
the ifx_connect function hangs. 
One would expect to return some meaningfull information.

OS:
Linux giant-a 2.2.14-5.0smp #1 SMP Tue Mar 7 21:01:40 EST 2000 i686 unknown
conf:
./configure' --enable-trans-sid' '--enable-dbase' '--enable-track-vars' 
'--with-informix' '--with-t1lib=/usr/local/src/T1-1.0.1/' 
'--with-zlib-dir=/usr/local/src/zlib-1.1.3/' '--with-gd=/usr/local/src/gd-1.8.4/' 
'--with-jpeg-dir=/usr/local/src/jpeg-6b/' '--with-ttf=/usr/local/src/freetype-1.3.1/' 
'--with-png-dir=/usr/local/src/libpng-1.0.8/'





Edit this bug report at http://bugs.php.net/?id=12672edit=1


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Bug #12642 Updated: Loading php_oci8 fails

2001-08-10 Thread sniper

ID: 12642
Updated by: sniper
Reported By: [EMAIL PROTECTED]
Old Status: Open
Status: Feedback
Old Bug Type: OCI8 related
Bug Type: Dynamic loading
Operating System: Windows 2000
PHP Version: 4.0.6
New Comment:

What does phpinfo() output for extension_dir ??

--Jani


Previous Comments:


[2001-08-10 03:12:09] [EMAIL PROTECTED]

Hello Jani,

I've tried as recommended the PHP_EXIF.DLL and and there comes an error, too. PHP 
without any extensions works without no problems.

The Line within PHP.INI looks like:

; Directory in which the loadable extensions (modules) reside.
extension_dir = C:\PHP\extensions\

For me it looks like the PHP.EXE from the distribution IIS (without DLL's in the 
package) won't fit with the DLL's from the 2nd distribution for Apache. Both for 
Windows.




[2001-08-09 16:59:21] [EMAIL PROTECTED]

Does PHP work if you disable every extension?
If so, try enabling ONLY this extension:

php_exif.dll  (it definately doesn't need any extra libs)

If it works, then try enabling php_oci8.dll too.
btw. What is your extension_dir line in php.ini?

--Jani




[2001-08-09 07:11:30] [EMAIL PROTECTED]

I'm not very familiar with the Dependency Walker. As far as I can see, there are no 
errors logged. But I can send you the DWI-File if you want to see the Image.



[2001-08-09 06:02:27] [EMAIL PROTECTED]

could you try opening php_oci8.dll in Dependency Walker 
(http://www.dependencywalker.com/)? does it report any problems?



[2001-08-09 05:56:01] [EMAIL PROTECTED]

The OCI.DLL is within C:\Oracle\Ora81\bin; 
which is in the PATH



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/?id=12642


Edit this bug report at http://bugs.php.net/?id=12642edit=1


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Bug #12642 Updated: Loading php_oci8 fails

2001-08-10 Thread sniper

ID: 12642
Updated by: sniper
Reported By: [EMAIL PROTECTED]
Status: Feedback
Bug Type: Dynamic loading
Operating System: Windows 2000
PHP Version: 4.0.6
New Comment:

And also, where are the extensions located?
Are they in C:\php\extensions\ ???


Previous Comments:


[2001-08-10 03:33:58] [EMAIL PROTECTED]

What does phpinfo() output for extension_dir ??

--Jani




[2001-08-10 03:12:09] [EMAIL PROTECTED]

Hello Jani,

I've tried as recommended the PHP_EXIF.DLL and and there comes an error, too. PHP 
without any extensions works without no problems.

The Line within PHP.INI looks like:

; Directory in which the loadable extensions (modules) reside.
extension_dir = C:\PHP\extensions\

For me it looks like the PHP.EXE from the distribution IIS (without DLL's in the 
package) won't fit with the DLL's from the 2nd distribution for Apache. Both for 
Windows.




[2001-08-09 16:59:21] [EMAIL PROTECTED]

Does PHP work if you disable every extension?
If so, try enabling ONLY this extension:

php_exif.dll  (it definately doesn't need any extra libs)

If it works, then try enabling php_oci8.dll too.
btw. What is your extension_dir line in php.ini?

--Jani




[2001-08-09 07:11:30] [EMAIL PROTECTED]

I'm not very familiar with the Dependency Walker. As far as I can see, there are no 
errors logged. But I can send you the DWI-File if you want to see the Image.



[2001-08-09 06:02:27] [EMAIL PROTECTED]

could you try opening php_oci8.dll in Dependency Walker 
(http://www.dependencywalker.com/)? does it report any problems?



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/?id=12642


Edit this bug report at http://bugs.php.net/?id=12642edit=1


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Bug #12672 Updated: ifx_connect does not return when base not present

2001-08-10 Thread sniper

ID: 12672
Updated by: sniper
Reported By: [EMAIL PROTECTED]
Old Status: Open
Status: Feedback
Bug Type: Informix related
Operating System: Linux RH 6.2
PHP Version: 4.0.6
New Comment:

What does this script output for you:

?php

error_reporting(E_ALL);
$pp = ifx_connect(base, user, pass);
print_r($pp);

?

The compiler / configure options don't matter here.

--Jani


Previous Comments:


[2001-08-10 03:26:12] [EMAIL PROTECTED]

I've built the php4.0.7-dev as you suggested. There
is a lot of differences in ifx.ec file, but unfortunatelly
it doesn't work. Symptoms are the same.

I've checked on our production computer with 4.0.3pl1.
It's the same.

I am using gcc 2.95.3 with --enable-shared and --enable-threads. Which 
compiler/settings do you use ?



[2001-08-09 16:34:12] [EMAIL PROTECTED]

Oops. The correct url to snapshots is: http://snaps.php.net/

--Jani




[2001-08-09 16:33:43] [EMAIL PROTECTED]

I tried this with latest CVS and it works just fine.
ie. it gives an error for it.

Please try it: http://www.php.net/

--Jani




[2001-08-09 09:59:10] [EMAIL PROTECTED]

?
 echo (before\n);
 $id = ifx_connect(base,user,pass);
 echo (after\n);
?

if ifx is up you get
before
after
otherwise you get
before
(program does not return)



[2001-08-09 08:22:49] [EMAIL PROTECTED]

please include a sample script...



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/?id=12672


Edit this bug report at http://bugs.php.net/?id=12672edit=1


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Bug #12672 Updated: ifx_connect does not return when base not present

2001-08-10 Thread matjaz . ostroversnik

ID: 12672
User updated by: [EMAIL PROTECTED]
Reported By: [EMAIL PROTECTED]
Old Status: Feedback
Status: Open
Bug Type: Informix related
Operating System: Linux RH 6.2
PHP Version: 4.0.6
New Comment:

if ifx is up
Resource id #1
if ifx is down the program does not return.

Previous Comments:


[2001-08-10 03:37:30] [EMAIL PROTECTED]

What does this script output for you:

?php

error_reporting(E_ALL);
$pp = ifx_connect(base, user, pass);
print_r($pp);

?

The compiler / configure options don't matter here.

--Jani




[2001-08-10 03:26:12] [EMAIL PROTECTED]

I've built the php4.0.7-dev as you suggested. There
is a lot of differences in ifx.ec file, but unfortunatelly
it doesn't work. Symptoms are the same.

I've checked on our production computer with 4.0.3pl1.
It's the same.

I am using gcc 2.95.3 with --enable-shared and --enable-threads. Which 
compiler/settings do you use ?



[2001-08-09 16:34:12] [EMAIL PROTECTED]

Oops. The correct url to snapshots is: http://snaps.php.net/

--Jani




[2001-08-09 16:33:43] [EMAIL PROTECTED]

I tried this with latest CVS and it works just fine.
ie. it gives an error for it.

Please try it: http://www.php.net/

--Jani




[2001-08-09 09:59:10] [EMAIL PROTECTED]

?
 echo (before\n);
 $id = ifx_connect(base,user,pass);
 echo (after\n);
?

if ifx is up you get
before
after
otherwise you get
before
(program does not return)



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/?id=12672


Edit this bug report at http://bugs.php.net/?id=12672edit=1


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] 4.0.7 - CVS build problem

2001-08-10 Thread Jani Taskinen


Should be fixed. Again. :)
People should test build also in ZTS mode..

--Jani


On Fri, 10 Aug 2001, Steeg wrote:

Hi again ;)

I'm trying to compile the latest CVS but get this error:

php_domxml.c: In function `php_xpathptr_eval':
php_domxml.c:2522: too few arguments to function `php_dom_get_object'
make[3]: *** [php_domxml.lo] Error 1


Jani has been helping me out on this issue earlier and actually fixed
this. Don't know what've happened.


I'm using Mandrake 8.0, Apache 2.0.23 and PHP-cvs as of 09:00 CET.


Thanks


Stig Smelror




-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Bug #12672 Updated: ifx_connect does not return when base not present

2001-08-10 Thread sniper

ID: 12672
Updated by: sniper
Reported By: [EMAIL PROTECTED]
Old Status: Open
Status: Feedback
Bug Type: Informix related
Operating System: Linux RH 6.2
PHP Version: 4.0.6
New Comment:

What do you mean by 'Does not return' ?
And with which version of PHP did you try this?

--Jani

Previous Comments:


[2001-08-10 03:50:07] [EMAIL PROTECTED]

if ifx is up
Resource id #1
if ifx is down the program does not return.



[2001-08-10 03:37:30] [EMAIL PROTECTED]

What does this script output for you:

?php

error_reporting(E_ALL);
$pp = ifx_connect(base, user, pass);
print_r($pp);

?

The compiler / configure options don't matter here.

--Jani




[2001-08-10 03:26:12] [EMAIL PROTECTED]

I've built the php4.0.7-dev as you suggested. There
is a lot of differences in ifx.ec file, but unfortunatelly
it doesn't work. Symptoms are the same.

I've checked on our production computer with 4.0.3pl1.
It's the same.

I am using gcc 2.95.3 with --enable-shared and --enable-threads. Which 
compiler/settings do you use ?



[2001-08-09 16:34:12] [EMAIL PROTECTED]

Oops. The correct url to snapshots is: http://snaps.php.net/

--Jani




[2001-08-09 16:33:43] [EMAIL PROTECTED]

I tried this with latest CVS and it works just fine.
ie. it gives an error for it.

Please try it: http://www.php.net/

--Jani




The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/?id=12672


Edit this bug report at http://bugs.php.net/?id=12672edit=1


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Bug #12672 Updated: ifx_connect does not return when base not present

2001-08-10 Thread matjaz . ostroversnik

ID: 12672
User updated by: [EMAIL PROTECTED]
Reported By: [EMAIL PROTECTED]
Old Status: Feedback
Status: Open
Bug Type: Informix related
Operating System: Linux RH 6.2
PHP Version: 4.0.6
New Comment:

I tried this with the last build (/usr/local/src/php4-200108092235).

Does not return mean that I have to use Ctrl/c
to exit the program. That was my initial bug report.

Meantime I written short esql/c program (no php) and
the same thing happens. It must be something wrong with
our db instalation.

bug #12672 is actually nonexistent.

Thanks for your time.

Previous Comments:


[2001-08-10 04:27:01] [EMAIL PROTECTED]

What do you mean by 'Does not return' ?
And with which version of PHP did you try this?

--Jani



[2001-08-10 03:50:07] [EMAIL PROTECTED]

if ifx is up
Resource id #1
if ifx is down the program does not return.



[2001-08-10 03:37:30] [EMAIL PROTECTED]

What does this script output for you:

?php

error_reporting(E_ALL);
$pp = ifx_connect(base, user, pass);
print_r($pp);

?

The compiler / configure options don't matter here.

--Jani




[2001-08-10 03:26:12] [EMAIL PROTECTED]

I've built the php4.0.7-dev as you suggested. There
is a lot of differences in ifx.ec file, but unfortunatelly
it doesn't work. Symptoms are the same.

I've checked on our production computer with 4.0.3pl1.
It's the same.

I am using gcc 2.95.3 with --enable-shared and --enable-threads. Which 
compiler/settings do you use ?



[2001-08-09 16:34:12] [EMAIL PROTECTED]

Oops. The correct url to snapshots is: http://snaps.php.net/

--Jani




The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/?id=12672


Edit this bug report at http://bugs.php.net/?id=12672edit=1


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Bug #12672 Updated: ifx_connect does not return when base not present

2001-08-10 Thread sniper

ID: 12672
Updated by: sniper
Reported By: [EMAIL PROTECTED]
Old Status: Open
Status: Bogus
Bug Type: Informix related
Operating System: Linux RH 6.2
PHP Version: 4.0.6
New Comment:

Bogus then.


Previous Comments:


[2001-08-10 04:46:42] [EMAIL PROTECTED]

I tried this with the last build (/usr/local/src/php4-200108092235).

Does not return mean that I have to use Ctrl/c
to exit the program. That was my initial bug report.

Meantime I written short esql/c program (no php) and
the same thing happens. It must be something wrong with
our db instalation.

bug #12672 is actually nonexistent.

Thanks for your time.



[2001-08-10 04:27:01] [EMAIL PROTECTED]

What do you mean by 'Does not return' ?
And with which version of PHP did you try this?

--Jani



[2001-08-10 03:50:07] [EMAIL PROTECTED]

if ifx is up
Resource id #1
if ifx is down the program does not return.



[2001-08-10 03:37:30] [EMAIL PROTECTED]

What does this script output for you:

?php

error_reporting(E_ALL);
$pp = ifx_connect(base, user, pass);
print_r($pp);

?

The compiler / configure options don't matter here.

--Jani




[2001-08-10 03:26:12] [EMAIL PROTECTED]

I've built the php4.0.7-dev as you suggested. There
is a lot of differences in ifx.ec file, but unfortunatelly
it doesn't work. Symptoms are the same.

I've checked on our production computer with 4.0.3pl1.
It's the same.

I am using gcc 2.95.3 with --enable-shared and --enable-threads. Which 
compiler/settings do you use ?



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/?id=12672


Edit this bug report at http://bugs.php.net/?id=12672edit=1


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Bug #12642 Updated: Loading php_oci8 fails

2001-08-10 Thread Thomas . Seuring

ID: 12642
User updated by: [EMAIL PROTECTED]
Reported By: [EMAIL PROTECTED]
Old Status: Feedback
Status: Open
Bug Type: Dynamic loading
Operating System: Windows 2000
PHP Version: 4.0.6
New Comment:

Hello Jani,

the DLL's are really in this Path and .phpinfo() shows

Directive Local ValueMaster Value
...
extension_dir E:\PHP\extensions\ E:\PHP\extensions\ 



Previous Comments:


[2001-08-10 03:34:46] [EMAIL PROTECTED]

And also, where are the extensions located?
Are they in C:\php\extensions\ ???




[2001-08-10 03:33:58] [EMAIL PROTECTED]

What does phpinfo() output for extension_dir ??

--Jani




[2001-08-10 03:12:09] [EMAIL PROTECTED]

Hello Jani,

I've tried as recommended the PHP_EXIF.DLL and and there comes an error, too. PHP 
without any extensions works without no problems.

The Line within PHP.INI looks like:

; Directory in which the loadable extensions (modules) reside.
extension_dir = C:\PHP\extensions\

For me it looks like the PHP.EXE from the distribution IIS (without DLL's in the 
package) won't fit with the DLL's from the 2nd distribution for Apache. Both for 
Windows.




[2001-08-09 16:59:21] [EMAIL PROTECTED]

Does PHP work if you disable every extension?
If so, try enabling ONLY this extension:

php_exif.dll  (it definately doesn't need any extra libs)

If it works, then try enabling php_oci8.dll too.
btw. What is your extension_dir line in php.ini?

--Jani




[2001-08-09 07:11:30] [EMAIL PROTECTED]

I'm not very familiar with the Dependency Walker. As far as I can see, there are no 
errors logged. But I can send you the DWI-File if you want to see the Image.



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/?id=12642


Edit this bug report at http://bugs.php.net/?id=12642edit=1


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Bug #12642 Updated: Loading php_oci8 fails

2001-08-10 Thread sniper

ID: 12642
Updated by: sniper
Reported By: [EMAIL PROTECTED]
Old Status: Open
Status: Feedback
Bug Type: Dynamic loading
Operating System: Windows 2000
PHP Version: 4.0.6
New Comment:

If extension_dir points to drive E: and the extensions
are on drive C: I can't understand how it could work..

Also, the error message points to totally different place.
So what's the correct one??


Previous Comments:


[2001-08-10 04:57:40] [EMAIL PROTECTED]

Hello Jani,

the DLL's are really in this Path and .phpinfo() shows

Directive Local ValueMaster Value
...
extension_dir E:\PHP\extensions\ E:\PHP\extensions\ 





[2001-08-10 03:34:46] [EMAIL PROTECTED]

And also, where are the extensions located?
Are they in C:\php\extensions\ ???




[2001-08-10 03:33:58] [EMAIL PROTECTED]

What does phpinfo() output for extension_dir ??

--Jani




[2001-08-10 03:12:09] [EMAIL PROTECTED]

Hello Jani,

I've tried as recommended the PHP_EXIF.DLL and and there comes an error, too. PHP 
without any extensions works without no problems.

The Line within PHP.INI looks like:

; Directory in which the loadable extensions (modules) reside.
extension_dir = C:\PHP\extensions\

For me it looks like the PHP.EXE from the distribution IIS (without DLL's in the 
package) won't fit with the DLL's from the 2nd distribution for Apache. Both for 
Windows.




[2001-08-09 16:59:21] [EMAIL PROTECTED]

Does PHP work if you disable every extension?
If so, try enabling ONLY this extension:

php_exif.dll  (it definately doesn't need any extra libs)

If it works, then try enabling php_oci8.dll too.
btw. What is your extension_dir line in php.ini?

--Jani




The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/?id=12642


Edit this bug report at http://bugs.php.net/?id=12642edit=1


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Could someone give a bit of a pointer here...

2001-08-10 Thread Andrew McBeath

I'm not sure if this is the correct list to post this, but I was wondering
if someone
could lend a hand and point me in the right direction here?

For interest sake, last week, I successfully wrote/compiled/ran an extension
module
(a basic arc4 cipher implementation...yes I know there is already one but
like I said
it was in interest...)
Curiosity unsatisfied, I've gone on to further poking round in the php
source tree...
Today I thought I'd check out how include() is implemented...but I cant seem
to figure this one out...
I've gone up and down the tree, and found the most promising stuff in the
following files:

zend_compile.c (line 1965) zend_do_include_or_eval();
zend_execute.c (line 1975) (switch statement) case ZEND_INCLUDE_OR_EVAL

and several interesting entries in other files, but still nothing really
concrete

I probed a bit deeper and ended up looking at things like HashTable
*function_tables and decided
I didnt really know where I was going here... I figured I would save a bit
of time and 'brain strain'
and talk to someone who knows this stuff...

First, where is include() declared (so I can at least find the starting
point :), and is it
somehow built into the run-time compiler so that it's not quite as
straightforward as I thought...

Is anyone able to explain the principles behind all this, or at least point
me
in the right direction to start figuring this out?


Cheers,

Andrew McBeath



-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Could someone give a bit of a pointer here...

2001-08-10 Thread Markus Fischer

Not directly to your problem, but http://www.zend.com/apidoc/ has
some information (altough outdated :/ ) ...

About the include(): I bet you won't find it in function_tables
becaus its a language construct ... probably.

- Markus

-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Buildproblems in latest CVS

2001-08-10 Thread Petr Cech

On Thu, Aug 09, 2001 at 01:22:18PM +0200 , Anders Johannsen wrote:
 aj@uranos% ./buildconf
 buildconf: checking installation...
 buildconf: autoconf version 2.13 (ok)
 buildconf: automake version 1.4-p4 (ok)
 buildconf: libtool version 1.4b

note the 1.4b. it requires autoconf 2.50. but I think this goes for 1.4
also, but doesn't screem

 1996, (ok)
 rebuilding Makefile templates
 automake: configure.in: installing `Zend/ylwrap'
 rebuilding configure
 FATAL ERROR: Autoconf version 2.50 or higher is required for this script
 rebuilding acconfig.h
 rebuilding main/php_config.h.in
 FATAL ERROR: Autoconf version 2.50 or higher is required for this script

heh. debian package I'm sure. even if you try to use autoconf2.50 to force
2.52 you will fail.
Petr Cech
-- 
Debian GNU/Linux maintainer - www.debian.{org,cz}
   [EMAIL PROTECTED]

sgore We Are Debian.  You Will Be Packaged. Media Opinion Is Irrelevant.

-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] PHP in a Hyper-secure environment

2001-08-10 Thread Howie Oakes

Hello-

I realize I can have per-directory settings, however the issue is that I
want a web developer to be able to use a simplified version of PHP on a
page, yet still be able to call encoded functions that have access to the
full version of PHP, without allowing them direct access to that code.

I had a crazy thought...Could I set up PHP to parse the page twice? One
time looking for my complex funcions prefixed with a special name...using a
full version of PHP, and then parse it a seccond time running all the
regular PHP code?

-Howie



 Does anyone have any ideas? I basically want to run 2 versions of PHP at
 the same time, and access them from the same page. If you zend encode a
 script, can I get it to refer to a different php.ini? Is the php.ini file
 read when a script is executed, or does it get read only when you start
 apache?

If you are running Apache, you can use the .htaccess file to pass settings
to individual directories; for an example see:

   http://iki.fi/heko/utils/conf/dot-files/dot-htaccess

The php.ini file is only read once per server startup.






-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] PHP in a Hyper-secure environment

2001-08-10 Thread James Moore

anychance of writing your complex functions in C? then you can do exectly
what you want.

- James
- Original Message -
From: Howie Oakes [EMAIL PROTECTED]
To: [EMAIL PROTECTED]; [EMAIL PROTECTED]
Sent: Friday, August 10, 2001 2:55 PM
Subject: Re: [PHP-DEV] PHP in a Hyper-secure environment


 Hello-

 I realize I can have per-directory settings, however the issue is that I
 want a web developer to be able to use a simplified version of PHP on a
 page, yet still be able to call encoded functions that have access to the
 full version of PHP, without allowing them direct access to that code.

 I had a crazy thought...Could I set up PHP to parse the page twice? One
 time looking for my complex funcions prefixed with a special name...using
a
 full version of PHP, and then parse it a seccond time running all the
 regular PHP code?

 -Howie


 
  Does anyone have any ideas? I basically want to run 2 versions of PHP
at
  the same time, and access them from the same page. If you zend encode a
  script, can I get it to refer to a different php.ini? Is the php.ini
file
  read when a script is executed, or does it get read only when you start
  apache?
 
 If you are running Apache, you can use the .htaccess file to pass
settings
 to individual directories; for an example see:
 
  http://iki.fi/heko/utils/conf/dot-files/dot-htaccess
 
 The php.ini file is only read once per server startup.
 
 
 
 


 --
 PHP Development Mailing List http://www.php.net/
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 To contact the list administrators, e-mail: [EMAIL PROTECTED]


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Buildproblems in latest CVS

2001-08-10 Thread Sascha Schumann

 note the 1.4b. it requires autoconf 2.50. but I think this goes for 1.4
 also, but doesn't screem

Libtool 1.4 does not require autoconf 2.50 or higher.  Note
that libtool-1.4b is an alpha release, so you have to expect
failures.

- Sascha Experience IRCG
  http://schumann.cx/http://schumann.cx/ircg


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Buildproblems in latest CVS

2001-08-10 Thread Rasmus Lerdorf

  note the 1.4b. it requires autoconf 2.50. but I think this goes for 1.4
  also, but doesn't screem

 Libtool 1.4 does not require autoconf 2.50 or higher.  Note
 that libtool-1.4b is an alpha release, so you have to expect
 failures.

Perhaps I am too tired, but where did the stuff that would install php.h
and the rest of the header files in /usr/local/include/php go?  A make
install doesn't seem to do this anymore which means standalone extensions
are going to have issues.

-Rasmus


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Buildproblems in latest CVS

2001-08-10 Thread Rasmus Lerdorf

 It sits in pear/Makefile(.in)?.

 An installation I did two days ago looks complete -- all
 header files were copied to $prefix/include/php.

Yeah, it is working now.  Almost 5am.  I must have done something weird.

-Rasmus


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] error_reporting error_log

2001-08-10 Thread Holger Schopohl

Hi all,

i have a suggestion to different the
logging of warnings and errors.

why we don't split the reporting for display errors 
and logfile errors. the vantage would be,
on webserver we can reduce the error display with

display_errors = On
error_reporting_display  =  E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR

and at the same time the webmaster can nevertheless
see all problems with

log_errors = On
error_log = /var/log/php_errorlog
error_reporting_logging  =  E_ALL

this increase the security and productivity on
each webserver.

Regards,

-- 
Holger

-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Buildproblems in latest CVS

2001-08-10 Thread Olivier Bourgeois

Le Fri, 10 Aug 2001 13:11:33 +0200
Petr Cech [EMAIL PROTECTED] a ecrit :

 On Thu, Aug 09, 2001 at 01:22:18PM +0200 , Anders Johannsen wrote:
  aj@uranos% ./buildconf
  buildconf: checking installation...
  buildconf: autoconf version 2.13 (ok)
  buildconf: automake version 1.4-p4 (ok)
  buildconf: libtool version 1.4b
 
 note the 1.4b. it requires autoconf 2.50. but I think this goes for 1.4
 also, but doesn't screem
 
  1996, (ok)
  rebuilding Makefile templates
  automake: configure.in: installing `Zend/ylwrap'
  rebuilding configure
  FATAL ERROR: Autoconf version 2.50 or higher is required for this
script
  rebuilding acconfig.h
  rebuilding main/php_config.h.in
  FATAL ERROR: Autoconf version 2.50 or higher is required for this
script
 
 heh. debian package I'm sure. even if you try to use autoconf2.50 to
force
 2.52 you will fail.
   Petr Cech

exact, it fails like that (with an AC_PREREQ(2.50) added in configure.in)
:

buildconf: checking installation...
buildconf: autoconf version 2.52 (ok)
buildconf: automake version 1.4-p4 (ok)
buildconf: libtool version 1.4b

1996, (ok)
rebuilding Makefile templates
automake: configure.in: installing `Zend/ylwrap'
rebuilding configure
./aclocal.m4:943: error: m4_defn: undefined macro: _m4_divert_diversion
./aclocal.m4:472: PHP_SUBST is expanded from...
./aclocal.m4:943: the top level
rebuilding acconfig.h
rebuilding main/php_config.h.in
./aclocal.m4:943: error: m4_defn: undefined macro: _m4_divert_diversion
./aclocal.m4:472: PHP_SUBST is expanded from...
./aclocal.m4:943: the top level
autoconf2.50: tracing failed


So what happended between PHP-4.0.6 (which builds nice) and PHP-CVS that
fails on Debian ?
I know Debian's autoconf/libtool are buggy, but is there any solution to
build PHP ?

Or should I wait until the bug is fixed ?

 -- 
 Debian GNU/Linux maintainer - www.debian.{org,cz}
[EMAIL PROTECTED]
 
 sgore We Are Debian.  You Will Be Packaged. Media Opinion Is
Irrelevant.
 


-- 
Feminism, n.:
A political position which seeks to rebuild society so that
both men and women are treated as women wish to be treated.

-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] compile error on Win2000

2001-08-10 Thread Rubens Barroso


Operating system: Windows2000 Professional
PHP version:  4.0.6
PHP Bug Type: Compile Failure
Bug description:  unresolved externals

When try to compile a small module on VisualC++ 6.0  i get this
messages:

Configuration: variable_c - Win32
Debug
Compiling...
variable_creation.c
Linking...
variable_creation.obj : error LNK2001: unresolved external symbol
__imp__zend_hash_add_or_update
variable_creation.obj : error LNK2001: unresolved external symbol
__imp___efree
variable_creation.obj : error LNK2001: unresolved external symbol
__imp___zval_dtor
variable_creation.obj : error LNK2001: unresolved external symbol
__imp__zend_hash_find
variable_creation.obj : error LNK2001: unresolved external symbol
__imp___emalloc
Debug/variable_c.dll : fatal error LNK1120: 5 unresolved externals
Error executing link.exe.

variable_c.dll - 6 error(s), 0 warning(s)

Regards.


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Bug #12688 Updated: preg_match doesn't return newlines in match array

2001-08-10 Thread alindeman

ID: 12688
Updated by: alindeman
Reported By: [EMAIL PROTECTED]
Old Status: Open
Status: Bogus
Bug Type: *Regular Expressions
Operating System: FreeBSD 4.2
PHP Version: 4.0.6
New Comment:

add an s to the end of your reg exp.

   
if (preg_match('/Here(.*)$/s',$someline,$matches)){
 ^
 
this mean treat everything as one line and it will parse the
newline.

Previous Comments:


[2001-08-10 02:20:48] [EMAIL PROTECTED]

This is not a core dump, but rather an output problem with preg_match.  Here is a 
short script:

$someline = Here is some line.\n;
if ( preg_match('/Here(.*)$/',$someline,$matches) ) {
  $out = $matches[1];
}

print pre[$out]/pre;

$out now contains no newline when this clearly should be included!

--Liam





Edit this bug report at http://bugs.php.net/?id=12688edit=1


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Re: [PHP-CVS] cvs: php4 /ext/sablot sablot.c

2001-08-10 Thread Rasmus Lerdorf

 php_sablot.h has:
 
 typedef struct _php_sablot_globals {
  zval *errorHandler;
  php_sablot_error *errors;
  php_sablot_error errors_start;
  char *output_transform_file; /* For output transformations */
  int last_errno;  /* Global last_errno, if no handle is
  found */
  SablotHandle processor;
 } php_sablot_globals
 
 And now it won't build.

 It's a module interfacing with the engine.  If it used the
 BEGIN_MODULE_GLOBALS etc. macros, it'd build fine - I'll fix it.

This stuff is more the interface with the thread-safe resource manager.
These are not zend globals.  They are extension globals.

 Making a bad situation worse is simply not a good idea, that's why.  PHP
 extensions are really zend_module_entry's - the PHP macros are replicas of
 the engine macros, which is a bad situation.Removing them was on my
 TODO list on low prio, but I took the few minutes to do that now.

I don't think this is a good trend.  More and more stuff is being pulled
into the engine.  We are losing the clean distinction here.

-Rasmus


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Re: [PHP-CVS] cvs: php4 /ext/sablot php_sablot.h

2001-08-10 Thread Rasmus Lerdorf

 Again, making a bad situation worse is not a good thing.  I never said that
 my code's perfect, and indeed there are some places where there's still
 direct reference to auto-defined variable names, which is not a good
 thing.  Instead of making the situation worse though, when I face something
 like this, I tend to try and improve it.

What exactly have you improved?  I agree that the macro duplication is
bad.  But having everything, including visible auto-defined variables be
ZNED_ or zend_ doesn't make any sense to me.

An extension now looks like this:

::php_foo.h::

extern zend_module_entry foo_module_entry;

/* ZEND_FOO_API here? */
#ifdef PHP_WIN32
#define PHP_FOO_API __declspec(dllexport)
#else
#define PHP_FOO_API
#endif

#ifdef ZTS
#include TSRM.h
#endif

ZEND_MINIT_FUNCTION(foo);
ZEND_MSHUTDOWN_FUNCTION(foo);
ZEND_RINIT_FUNCTION(foo);
ZEND_RSHUTDOWN_FUNCTION(foo);
ZEND_MINFO_FUNCTION(foo);

ZEND_FUNCTION(my_func);
ZEND_FUNCTION(your_func);

ZEND_BEGIN_MODULE_GLOBALS(foo)
int bar;
ZEND_END_MODULE_GLOBALS(foo)

#ifdef ZTS
#define FOOG(v) TSRMG(foo_globals_id, zend_xmms_globals *, v)
#else
#define FOOG(v) (foo_globals.v)
#endif


::foo.c::

ZEND_DECLARE_MODULE_GLOBALS(foo)

function_entry foo_functions[] = {
ZEND_FE(my_func, NULL)
ZEND_FE(your_func, NULL)
}

zend_module_entry foo_module_entry = {
foo,
foo_functions,
ZEND_MINIT(foo),
ZEMD_MSHUTDOWN(foo),
ZEND_RINIT(foo),
ZEND_RSHUTDOWN(foo),
ZEND_MINFO(foo),
STANDARD_MODULE_PROPERTIES
};

#ifdef COMPILE_DL_FOO
ZEND_GET_MODULE(foo)
#endif

static void php_foo_init_globals(zend_foo_globals *foo_globals)
{
foo_globals-bar = 0;
}

ZEND_INI_BEGIN()
STD_ZEND_INI_ENTRY(foo.bar, 0, ZEND_INI_ALL, OnUpdateInt, bar, 
zend_foo_globals, foo_globals)
ZEND_INI_END()

PHP_MINIT_FUNCTION(foo)
{
ZEND_INIT_MODULE_GLOBALS(foo, php_foo_init_globals, NULL);
REGISTER_INI_ENTRIES();
return SUCCESS;
}

ZEND_MSHUTDOWN_FUNCTION(foo)
{
UNREGISTER_INI_ENTRIES();
return SUCCESS;
}

ZEND_MINFO_FUNCTION(foo)
{
php_info_print_table_start();
php_info_print_table_header(2, foo support, enabled);
php_info_print_table_end();
DISPLAY_INI_ENTRIES();
}

ZEND_FUNCTION(my_func)
{
zval **foo_arg;
int argc = ZEND_NUM_ARGS();
int foo;

if (argc  1 || (argc  zend_get_parameters_ex(argc, foo_arg) == FAILURE)) {
ZEND_WRONG_PARAM_COUNT();
}
convert_to_long_ex(foo_arg);
foo = Z_LVAL_PP(foo_arg);
REUTRN_LONG(foo);
}


Is this really what the goal is here?  It seems like a contest to see how
many times Zend can appear in the code.  I think some of this stuff
should be PHP_ or for things that really are engine related, perhaps
ENGINE_ to at least pretend that this is a modular architecture where if
someone was brave enough they could try to use the modularity and plug in
another engine.

However, if everyone on php-dev thinks the above look to a PHP extension
is just fine, I'll stop bickering.

-Rasmus


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Bug #12680 Updated: mail() is sent with incorrect timezone

2001-08-10 Thread alindeman

ID: 12680
Updated by: alindeman
Reported By: [EMAIL PROTECTED]
Old Status: Open
Status: Feedback
Bug Type: Mail related
Operating System: Windows NT 4.0 SP6
PHP Version: 4.0.6
New Comment:

Is the timezone on your mailserver the same as the zone on your
computer???

Previous Comments:


[2001-08-09 17:35:02] [EMAIL PROTECTED]

Here's the headers from the email I sent via telnet:

Return-Path: [EMAIL PROTECTED]
Received: from XXX.wcomnet.com ([XXX.XXX.XXX.XXX]) by
  XXX.wcomnet.com (Netscape Messaging Server 4.15) with ESMTP
  id GHTIG600.IEW for [EMAIL PROTECTED]; Thu, 9 Aug 2001
  20:33:42 + 
Return-path: [EMAIL PROTECTED]
Received: from CONVERSION-DAEMON by XXX.wcomnet.com (PMDF V5.2-33 #42262)
 id [EMAIL PROTECTED] for [EMAIL PROTECTED]; Thu,
 9 Aug 2001 20:33:42 + (GMT)
Received: from XXX.wcomnet.com by XXX.wcomnet.com
 (PMDF V5.2-33 #42262) with SMTP id [EMAIL PROTECTED] for
 [EMAIL PROTECTED]; Thu, 09 Aug 2001 20:33:39 + (GMT)
Received: from XXX.wcomnet.com ([XXX.XXX.XXX.XXX])
 by XXX.wcomnet.com (PMDF V5.2-33 #42262)
 with ESMTP id [EMAIL PROTECTED] for
 [EMAIL PROTECTED]; Thu, 09 Aug 2001 20:32:57 + (GMT)
Received: from XXX.XXX.XXX.XXX by XXX.wcomnet.com  with Microsoft
 SMTPSVC(5.5.1774.114.11); Thu, 09 Aug 2001 15:24:25 -0500
Date: Thu, 09 Aug 2001 15:24:52 -0500
From: [EMAIL PROTECTED]
Bcc: 
Message-id: [EMAIL PROTECTED]

This is a test message 



[2001-08-09 17:32:37] [EMAIL PROTECTED]

Here's headers from a bad email:

Return-Path: [EMAIL PROTECTED]
Received: from XXX.wcomnet.com ([XXX.XXX.XXX.XXX]) by
  XXX.XXX.XXX.XXX (Netscape Messaging Server 4.15) with
ESMTP
  id GHT2IQ00.KNI; Thu, 9 Aug 2001 14:49:38 + 
Return-path: [EMAIL PROTECTED]
Received: from CONVERSION-DAEMON by dgismtp03.wcomnet.com (PMDF V5.2-33
#42262)
 id [EMAIL PROTECTED]; Thu,
 9 Aug 2001 14:49:37 + (GMT)
Received: from XXX.wcomnet.com by XXX.wcomnet.com
 (PMDF V5.2-33 #42262) with SMTP id
[EMAIL PROTECTED];
 Thu, 09 Aug 2001 14:49:36 + (GMT)
Received: from XXX.wcomnet.com ([XXX.XXX.XXX.XXX])
 by XXX.wcomnet.com (PMDF V5.2-33 #42262)
 with ESMTP id [EMAIL PROTECTED]; Thu,
 09 Aug 2001 14:49:14 + (GMT)
Received: from XXX.XXX.XXX.XXX by XXX.wcomnet.com  with Microsoft
 SMTPSVC(5.5.1774.114.11); Thu, 09 Aug 2001 09:41:11 -0500
Date: Thu, 09 Aug 2001 09:41:11 +0600
From: [EMAIL PROTECTED]
Subject: XXX
X-Sender: [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
Reply-to: [EMAIL PROTECTED]
Message-id: [EMAIL PROTECTED]



[2001-08-09 17:27:30] [EMAIL PROTECTED]

Here's the portion of the script that governs mail:

if (isset($mail_from) || isset($mail_cc)) {
  $mail_headers = From: $mail_from\r\nReply-to: $mail_from\r\n;

  if (isset($mail_cc)  ($mail_cc != )) {
$mail_headers = $mail_headers . Cc: $mail_cc\r\n;
  }
}
else {
  $mail_headers = ;
}

if (isset($mail_to)  isset($mail_subject)  isset($mail_body)  
isset($mail_headers)  ($submit == Submit)) {

  mail($mail_to, $mail_subject, $mail_body, $mail_headers);





[2001-08-09 17:23:17] [EMAIL PROTECTED]

I think I have a bug with the Win32 version of php.exe (perhaps the ISAPI version 
also?) where the SENT time on every email that goes out shows up as incorrect.  I've 
tried it several times, even with multiple versions (also tested 4.0.4pl1 and 4.0.5).  
No matter what I try, any email sent by php's mail() function is received with the 
wrong timezone (so mail time appears correct, but received from earlier time because 
of zone).

I am not using any addons for PHP.  I have IIS 4.0 using PHP in CGI mode, with the 
SMTP service loaded locally.  I am also running mySQL 3.23.37.

I can successfully telnet to port 25 on that server and send myself an email using 
SMTP commands.  I'll post my mail script shortly.

Any thoughts?





Edit this bug report at http://bugs.php.net/?id=12680edit=1


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Bug #12689: Problem while returning from a function

2001-08-10 Thread cmid

From: [EMAIL PROTECTED]
Operating system: Microsoft Windows NT
PHP version:  4.0.4pl1
PHP Bug Type: *General Issues
Bug description:  Problem while returning from a function

I've got a problem with a little function in a test script :
I want to return a string value, that exists before returning from the
function. And when I try to get back this string out of the function, the
value found is 0 (zero), and definitly not the one echoed in the
function...

You can see below the bugged script (you will have to suppress comments to
run it) , with some 'echo' to localise the problem, the csv file I tried to
analyse, the output obtained in my browser, and finally, a few lines
commenting the problem...

PHP version is 4.04pl1, running with an Apache server, on a NT4 system.

?

// Here is the script

/*
$file=D:\\wwwroot\\e_learning\\ftp\\ga_ln_en_en.csv;
$langue=en;
//list($nbl,$abv,$idls)=get_langues();
$abv=array(fr,en,de);
// Ouverture du fichier
if(isset($file))
{
function get_line($f_p)
{
if(feof($f_p))
return ;
else
{$str=addslashes(fgets($f_p,4096));echo 
BRgetline : $str;return
$str;}
//  return addslashes(fgets($f_p,4096));
}


// le deroulement de cette fonction part du principe qu'il n'y 
a pas
d'erreur dans le csv
// NB on pourrait se passer des numeros de chapitres et de 
pages dans le
csv...
function analine($lin,$tofind,$obj,$att,$lan,$par=-1)
{
GLOBAL $langue, $abv;

$match=explode(;,$lin);
if(preg_match(/^\b$tofind\b/i,$match[0]))
{
$count=count($match);
switch($tofind)
{
case cours :
// c'est la premiere ligne 
qu'on doit analyser (les tableaux sont
vides).
$obj[0]=array(page_form,-1);

$att[0][-1]=array(titre,language,0);

$att[0][-2]=array(desc,language,0);

$att[0][0]=array(page_form,text,$langue);

$att[0][2]=array(page_form,text,...);

$att[0][3]=array(page_form,text,);

$l=3;
foreach($abv as $ab)
{
// titre
$arr_ti[$ab] = 
$match[$l++];
// description
$arr_de[$ab] = 
$match[$l++];
}
$lan[0]=$arr_ti;
$lan[1]=$arr_de;
// on renvoie 0, a savoir 
l'increment de l'objet ajoute dans
'obj[]'
return 0;
// du coup le 'break' ne sert 
a rien, si ce n'est impressionner le
foules sur des rythmes endiables
break;
case chapitre :
$cl=count($lan);

$obj[$match[1]]=array(chapitre,$par);

$att[$match[1]][0]=array(chapitre,text,$match[1]);

$att[$match[1]][-1]=array(titre,language,$cl);

$att[$match[1]][-2]=array(desc,language,$cl+1);

$l=3;
  

[PHP-DEV] Re: [PHP-CVS] cvs: php4 /ext/sablot php_sablot.h

2001-08-10 Thread Zeev Suraski

At 16:42 10-08-01, Rasmus Lerdorf wrote:
  Again, making a bad situation worse is not a good thing.  I never said that
  my code's perfect, and indeed there are some places where there's still
  direct reference to auto-defined variable names, which is not a good
  thing.  Instead of making the situation worse though, when I face something
  like this, I tend to try and improve it.

What exactly have you improved?  I agree that the macro duplication is
bad.  But having everything, including visible auto-defined variables be
ZNED_ or zend_ doesn't make any sense to me.

An extension now looks like this:

::php_foo.h::

extern zend_module_entry foo_module_entry;

/* ZEND_FOO_API here? */
#ifdef PHP_WIN32
#define PHP_FOO_API __declspec(dllexport)
#else
#define PHP_FOO_API
#endif

#ifdef ZTS
#include TSRM.h
#endif

ZEND_MINIT_FUNCTION(foo);
ZEND_MSHUTDOWN_FUNCTION(foo);
ZEND_RINIT_FUNCTION(foo);
ZEND_RSHUTDOWN_FUNCTION(foo);
ZEND_MINFO_FUNCTION(foo);

ZEND_FUNCTION(my_func);
ZEND_FUNCTION(your_func);

ZEND_BEGIN_MODULE_GLOBALS(foo)
 int bar;
ZEND_END_MODULE_GLOBALS(foo)

#ifdef ZTS
#define FOOG(v) TSRMG(foo_globals_id, zend_xmms_globals *, v)
#else
#define FOOG(v) (foo_globals.v)
#endif


::foo.c::

ZEND_DECLARE_MODULE_GLOBALS(foo)

function_entry foo_functions[] = {
 ZEND_FE(my_func, NULL)
 ZEND_FE(your_func, NULL)
}

zend_module_entry foo_module_entry = {
 foo,
 foo_functions,
 ZEND_MINIT(foo),
 ZEMD_MSHUTDOWN(foo),
 ZEND_RINIT(foo),
 ZEND_RSHUTDOWN(foo),
 ZEND_MINFO(foo),
 STANDARD_MODULE_PROPERTIES
};

#ifdef COMPILE_DL_FOO
ZEND_GET_MODULE(foo)
#endif

static void php_foo_init_globals(zend_foo_globals *foo_globals)
{
 foo_globals-bar = 0;
}

ZEND_INI_BEGIN()
 STD_ZEND_INI_ENTRY(foo.bar, 0, ZEND_INI_ALL, OnUpdateInt, bar, 
 zend_foo_globals, foo_globals)
ZEND_INI_END()

PHP_MINIT_FUNCTION(foo)
{
 ZEND_INIT_MODULE_GLOBALS(foo, php_foo_init_globals, NULL);
 REGISTER_INI_ENTRIES();
 return SUCCESS;
}

ZEND_MSHUTDOWN_FUNCTION(foo)
{
 UNREGISTER_INI_ENTRIES();
 return SUCCESS;
}

ZEND_MINFO_FUNCTION(foo)
{
 php_info_print_table_start();
 php_info_print_table_header(2, foo support, enabled);
 php_info_print_table_end();
 DISPLAY_INI_ENTRIES();
}

ZEND_FUNCTION(my_func)
{
 zval **foo_arg;
 int argc = ZEND_NUM_ARGS();
 int foo;

 if (argc  1 || (argc  zend_get_parameters_ex(argc, foo_arg) == 
 FAILURE)) {
 ZEND_WRONG_PARAM_COUNT();
 }
 convert_to_long_ex(foo_arg);
 foo = Z_LVAL_PP(foo_arg);
 REUTRN_LONG(foo);
}


Is this really what the goal is here?  It seems like a contest to see how
many times Zend can appear in the code.  I think some of this stuff
should be PHP_ or for things that really are engine related, perhaps
ENGINE_ to at least pretend that this is a modular architecture where if
someone was brave enough they could try to use the modularity and plug in
another engine.

There was no need to write this long Email just to make the simple point 
that you want to make PHP modular in the other way, which it isn't and 
never designed to be.  Yes, PHP is completely dependant on the Zend engine, 
and it's not supposed to be easy to plug in another scripting engine.  When 
Andi and I separate the engine from PHP it was with one goal - having the 
ability to reuse it in applications other than PHP.  I remember that you 
immediately thought about it the other way around, but it's not any more 
true today as it was then, and if you recall, I told you that right 
away.  An app built on a certain infrastructure is dependant on that 
infrastructure, but not the other way around.

However, if everyone on php-dev thinks the above look to a PHP extension
is just fine, I'll stop bickering.

I'm +1 on that :)

Zeev


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Re: [PHP-CVS] cvs: php4 /ext/sablot php_sablot.h

2001-08-10 Thread Sascha Schumann

 away.  An app built on a certain infrastructure is dependant on that
 infrastructure, but not the other way around.

You wrongly assume that the API is equal to the
implementation.  PHP can use an API which is completely
independent of the Zend engine.

 However, if everyone on php-dev thinks the above look to a PHP extension
 is just fine, I'll stop bickering.

 I'm +1 on that :)

-1 here.

- Sascha Experience IRCG
  http://schumann.cx/http://schumann.cx/ircg


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] PHP4.0.6, php_iconv bugs

2001-08-10 Thread Stig Sæther Bakken

[Piotr Pawlow [EMAIL PROTECTED]]
 Hello,
 
 I have noticed that php_iconv sometimes fails to convert the string
 due to invalid sequence of characters on input, and there is no way to
 find out where the bad sequence is. I think there should be an
 optional parameter added to iconv() function, a variable passed by
 reference. If used, iconv would in case of an error return partially
 converted string, and set this variable to character index at which
 the conversion failed.
 Also, php_iconv makes a wrong assumption that the longest sequence
 representing one char is as long as sizeof(ucs4_t). For example,
 unicode combined characters can easily be longer, the same applies to
 encodings like 'JAVA' (\u).

Did you test the same thing with another program using iconv?

I've encountered the same problem in iconv when I tried to convert an
ISO-8859-1 string containing ~ to Shift_JIS.  Shift_JIS actually
does not define the tilde character, so iconv bailed out and returned
an empty string (the solution is using codepage 932 instead when
people ask for Shift_JIS.  Bleh.)

 - Stig

-- 
  Stig Sæther Bakken [EMAIL PROTECTED]
  Fast Search  Transfer ASA, Trondheim, Norway

-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Re: [PHP-CVS] cvs: php4 /ext/sablot php_sablot.h

2001-08-10 Thread Zeev Suraski

At 17:08 10-08-01, Sascha Schumann wrote:
  away.  An app built on a certain infrastructure is dependant on that
  infrastructure, but not the other way around.

 You wrongly assume that the API is equal to the
 implementation.  PHP can use an API which is completely
 independent of the Zend engine.

If I didn't know that the only thing that telling you the truth would be 
encouraging you, I'd say it.  But you're smart enough to figure out what I 
would have said yourself.

  However, if everyone on php-dev thinks the above look to a PHP extension
  is just fine, I'll stop bickering.
 
  I'm +1 on that :)

 -1 here.

Bicker on then, bicker on.

Zeev


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Re: Bug #12675 Updated: Link errors caused by new Oracle 8i LOB functions

2001-08-10 Thread David Munsey-Kano

./configure
--with-apache=/afs/northstar.dartmouth.edu/uother/source/sys/apache/
apache_1.3.20 \
--with-oci8 \
--without-gdbm \
--with-xml \
--enable-wddx \
--disable-debug

The link errors were basic unresolved errors on:

OCILobOpen
OCILobClose
OCILobCreateTemp ?

My collegue who was doing this work said he found the unresolved symbols
(routines) in an unreferenced oracle library. He tried to make this work
by adding that library to the make file, but then he got all kinds of
other errors.

What version of Oracle do you have installed?

Thanks, David
---

Bug Database wrote:
 
 ID: 12675
 Updated by: sniper
 Reported By: [EMAIL PROTECTED]
 Old Status: Open
 Status: Feedback
 Bug Type: Compile Failure
 Operating System: Digital Unix V4.0F (Rev. 1229)
 PHP Version: 4.0.6
 New Comment:
 
 I have the same version but I don't get any link errors.
 What is your configure line and what exactly are the errors?
 
 --Jani
 
 Previous Comments:
 
 
 [2001-08-09 13:40:24] [EMAIL PROTECTED]
 
 When trying to link, the following dependancies were not satisfied by our Oracle 
release (8.1.6):
 
 OCILobOpen
 OCILobClose
 OCILobCreateTemp ?
 
 Evidently these routines are in a different library, but if that library is linked 
as well, many more errors are generated.
 
 Perhaps the new LOB function additions will only build  work if you have a later 
(or different) version of Oracle?
 
 
 
 ATTENTION! Do NOT reply to this email!
 To reply, use the web interface found at http://bugs.php.net/?id=12675edit=2

-- 
David Munsey-Kano
Digital Library Technologies Group
Dartmouth College
(603) 646-1320

-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Re: [PHP-CVS] cvs: php4 /ext/sablot php_sablot.h

2001-08-10 Thread Andrei Zmievski

On Fri, 10 Aug 2001, Rasmus Lerdorf wrote:
 Is this really what the goal is here?  It seems like a contest to see how
 many times Zend can appear in the code.  I think some of this stuff
 should be PHP_ or for things that really are engine related, perhaps
 ENGINE_ to at least pretend that this is a modular architecture where if
 someone was brave enough they could try to use the modularity and plug in
 another engine.
 
 However, if everyone on php-dev thinks the above look to a PHP extension
 is just fine, I'll stop bickering.

Nope, this renaming stuff doesn't sit well with me either.

-Andrei

The 3 great virtues of a programmer:
Laziness, Impatience, and Hubris. 
--Larry Wall

-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Engine 2

2001-08-10 Thread Andi Gutmans

Hey,

The Engine 2 CVS pretty much implements the first step of the new object 
model. Objects are now handles which reference the same object and 
$obj-method1()-method2() is supported now. Quite a few places in PHP that 
use objects like call_user_function() might still not work though.
If anyone can try and run PHP with the Engine 2 CVS and send feedback on 
how well or badly their old object code runs that'll be great. I'm also 
interested in how many scripts are actually broken by the fact that objects 
are not copied when sent to functions by value and so on.

To check it out just checkout the ZendEngine2 CVS tree from cvs.zend.com 
and rename it from ZendEngine2 - Zend before building PHP.

Andi


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Bug #12675 Updated: Link errors caused by new Oracle 8i LOB functions

2001-08-10 Thread alindeman

ID: 12675
Updated by: alindeman
Reported By: [EMAIL PROTECTED]
Old Status: Feedback
Status: Open
Bug Type: Compile Failure
Operating System: Digital Unix V4.0F (Rev. 1229)
PHP Version: 4.0.6
New Comment:

User Feedback (emailed)

./configure---with-apache=/afs/northstar.dartmouth.edu/uother/source/sys/apache/
apache_1.3.20 \
--with-oci8 \
--without-gdbm \
--with-xml \
--enable-wddx \
--disable-debug

The link errors were basic unresolved errors on:

OCILobOpen
OCILobClose
OCILobCreateTemp ?

My collegue who was doing this work said he found the unresolved symbols
(routines) in an unreferenced oracle library. He tried to make this work
by adding that library to the make file, but then he got all kinds of
other errors.

What version of Oracle do you have installed?

Thanks, David
---

Previous Comments:


[2001-08-09 17:15:42] [EMAIL PROTECTED]

I have the same version but I don't get any link errors.
What is your configure line and what exactly are the errors?

--Jani




[2001-08-09 13:40:24] [EMAIL PROTECTED]

When trying to link, the following dependancies were not satisfied by our Oracle 
release (8.1.6):

OCILobOpen
OCILobClose
OCILobCreateTemp ?

Evidently these routines are in a different library, but if that library is linked as 
well, many more errors are generated.

Perhaps the new LOB function additions will only build  work if you have a later (or 
different) version of Oracle?





Edit this bug report at http://bugs.php.net/?id=12675edit=1


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Re: [PHP-CVS] cvs: php4 /ext/sablot php_sablot.h

2001-08-10 Thread Jason Greene

 Is this really what the goal is here?  It seems like a contest to see how
 many times Zend can appear in the code.  I think some of this stuff
 should be PHP_ or for things that really are engine related, perhaps
 ENGINE_ to at least pretend that this is a modular architecture where if
 someone was brave enough they could try to use the modularity and plug in
 another engine.
 
 There was no need to write this long Email just to make the simple point 
 that you want to make PHP modular in the other way, which it isn't and 
 never designed to be.  Yes, PHP is completely dependant on the Zend engine, 
 and it's not supposed to be easy to plug in another scripting engine.  When 
 Andi and I separate the engine from PHP it was with one goal - having the 
 ability to reuse it in applications other than PHP.  I remember that you 
 immediately thought about it the other way around, but it's not any more 
 true today as it was then, and if you recall, I told you that right 
 away.  An app built on a certain infrastructure is dependant on that 
 infrastructure, but not the other way around.
 
 However, if everyone on php-dev thinks the above look to a PHP extension
 is just fine, I'll stop bickering.
 
 I'm +1 on that :)
 
 Zeev

I do have to agree with Rasmus here. Yes, Zeev, PHP is completely dependant on
its engine, but the macro names are not acting like a truly modular system. The analogy
I come up with here is a hash table data structure. What if instead of having a neutral
hash_function = weinberger_hash, you had weinberger_hash = whatever. This name
convention really does not make much sence, becuase it implys that every hash 
function must be a weinberger algorythym. 

If you take a look at the ZEND_FUNCTION macro, this suggests to the module
developer that he is writing a function for the ENGINE not the language. You are
right that it is the engine's job to register functions, module names, etc. However
that is the description of ANY engine, not just Zend. If you are to say that you 
are modular you MUST be able to clearly differiantiate between all the modules
of the system, and yes any of those module should be capable of being replaced.

I am not saying that anyone should even try to replace the engine, but I am saying
there should be clear distinction between the components of PHP. If I could argue 
anything else, I would argue simple readibility. It should be clear to the PHP 
developers
that they are using the systems API not one module that is a part of the system even if
that module is the engine.

-Jason













 
 
 -- 
 PHP Development Mailing List http://www.php.net/
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 To contact the list administrators, e-mail: [EMAIL PROTECTED]
 


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Re: [PHP-CVS] cvs: php4 /ext/sablot php_sablot.h

2001-08-10 Thread derick

On Fri, 10 Aug 2001, Andrei Zmievski wrote:

 On Fri, 10 Aug 2001, Rasmus Lerdorf wrote:

 Nope, this renaming stuff doesn't sit well with me either.

This is not about renaming, it's about removing duplicate macro's. That is
good IMO. But if all PHP_ stuff should be removed infavor of the ZEND_
style, I don't really care. PHP and Zend are so thightly coupled, just
like Zeev said. I fully agree with him on that.

Derick

-
PHP: Scripting the Web - www.php.net - [EMAIL PROTECTED]
 SRM: Site Resource Manager - www.vl-srm.net
-


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Engine 2

2001-08-10 Thread Heikki Korpela

On Fri, 10 Aug 2001, Andi Gutmans wrote:

 I'm also
 interested in how many scripts are actually broken by the fact that objects
 are not copied when sent to functions by value and so on.

Did I get this right:

?php
function func1($object) {
$object-foo = 'bar';
}

function func2() {
$object = new StdClass;
$object-foo = 'not bar';
func1($object);
echo $object-foo;
}
func2();
?

After the engine change, the above would print 'bar'?



-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Re: [PHP-CVS] cvs: php4 /ext/sablot php_sablot.h

2001-08-10 Thread Andrei Zmievski

On Fri, 10 Aug 2001, [EMAIL PROTECTED] wrote:
 This is not about renaming, it's about removing duplicate macro's.

Of course it's about renaming. We used to have just PHP_* macros and
then Zeev added the ZEND_* versions and now PHP_* ones are just aliased
to ZEND_* ones for backwards compatibility.


-Andrei
* Non-volatile, random-access, analog memory store... a book. *

-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Re: [PHP-CVS] cvs: php4 /ext/sablot php_sablot.h

2001-08-10 Thread Andi Gutmans

At 09:18 AM 8/10/2001 -0500, Andrei Zmievski wrote:
On Fri, 10 Aug 2001, Rasmus Lerdorf wrote:
  Is this really what the goal is here?  It seems like a contest to see how
  many times Zend can appear in the code.  I think some of this stuff
  should be PHP_ or for things that really are engine related, perhaps
  ENGINE_ to at least pretend that this is a modular architecture where if
  someone was brave enough they could try to use the modularity and plug in
  another engine.
 
  However, if everyone on php-dev thinks the above look to a PHP extension
  is just fine, I'll stop bickering.

Nope, this renaming stuff doesn't sit well with me either.

I really don't think this whole thing is such a big deal either way. I 
could live with it both ways. I just think it's ridiculous how you guys are 
paranoid about the issue. I think duplicating these macros isn't a great 
thing because from a software design point of view it's yet another place 
to change. As they are Zend Engine services it makes sense to have the 
macros in the Zend Engine. We could give them another argument of prefix 
where we could specify zend in the Zend Engine and php for PHP but it'd 
probably would be much less user friendly in that case.
And yes, obviously the scripting engine and PHP are tightly coupled. You 
can't expect much less than that. I haven't seen any software where a 
program built around a certain framework wasn't tightly coupled with the 
framework. It wouldn't bother anyone if there weren't paranoia such as Rasmus'.
Anyway, as I said it's not a big deal so I just suggest everyone relaxes a 
bit and doesn't look for problems where there aren't any. It's just a string.

Andi


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Bug #12690: array_unique under windows does not work as it does under linux

2001-08-10 Thread colin

From: [EMAIL PROTECTED]
Operating system: Windows 2000
PHP version:  4.0.6
PHP Bug Type: Arrays related
Bug description:  array_unique under windows does not work as it does under linux

in linux, the following array would be UNCHANGED after being put through
array_unique.  But, in windows you'll see below, the it doesn't seem to go
deeper into the value of each array element to check if they are the same
or different.

the following are the results from using array_unique on wnidows 2000
BEFORE

Array
(
[0] = Array
(
[0] = 4003
[1] = 50140
[2] = 1
)

[1] = Array
(
[0] = 4001
[1] = 50140
[2] = 1
)

[2] = Array
(
[0] = 2051
[1] = 50200
[2] = 1
)

[3] = Array
(
[0] = 998
[1] = 50190
[2] = 1
)

)

AFTER ARRAY_UNIQUE

Array
(
[1] = Array
(
[0] = 4001
[1] = 50140
[2] = 1
)

)


-- 
Edit bug report at: http://bugs.php.net/?id=12690edit=1


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Engine 2

2001-08-10 Thread Andi Gutmans

At 05:31 PM 8/10/2001 +0300, Heikki Korpela wrote:
On Fri, 10 Aug 2001, Andi Gutmans wrote:

  I'm also
  interested in how many scripts are actually broken by the fact that objects
  are not copied when sent to functions by value and so on.

Did I get this right:

?php
function func1($object) {
 $object-foo = 'bar';
}

function func2() {
 $object = new StdClass;
 $object-foo = 'not bar';
 func1($object);
 echo $object-foo;
}
func2();
?

After the engine change, the above would print 'bar'?

Yeah, you got it right.

Andi


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Bug #12680 Updated: mail() is sent with incorrect timezone

2001-08-10 Thread alindeman

ID: 12680
Updated by: alindeman
Reported By: [EMAIL PROTECTED]
Old Status: Open
Status: Feedback
Bug Type: Mail related
Operating System: Windows NT 4.0 SP6
PHP Version: 4.0.6
New Comment:

Does this happen with just PHP, or with any mail program
that you use?

Previous Comments:


[2001-08-10 10:26:31] [EMAIL PROTECTED]

Yes, the timezone and time have been verified on the server and on my workstation.  
Both are set to CDT (-0500).

The test email reflected the correct timezone, but the PHP-created one did not.



[2001-08-10 09:45:56] [EMAIL PROTECTED]

Is the timezone on your mailserver the same as the zone on your
computer???



[2001-08-09 17:35:02] [EMAIL PROTECTED]

Here's the headers from the email I sent via telnet:

Return-Path: [EMAIL PROTECTED]
Received: from XXX.wcomnet.com ([XXX.XXX.XXX.XXX]) by
  XXX.wcomnet.com (Netscape Messaging Server 4.15) with ESMTP
  id GHTIG600.IEW for [EMAIL PROTECTED]; Thu, 9 Aug 2001
  20:33:42 + 
Return-path: [EMAIL PROTECTED]
Received: from CONVERSION-DAEMON by XXX.wcomnet.com (PMDF V5.2-33 #42262)
 id [EMAIL PROTECTED] for [EMAIL PROTECTED]; Thu,
 9 Aug 2001 20:33:42 + (GMT)
Received: from XXX.wcomnet.com by XXX.wcomnet.com
 (PMDF V5.2-33 #42262) with SMTP id [EMAIL PROTECTED] for
 [EMAIL PROTECTED]; Thu, 09 Aug 2001 20:33:39 + (GMT)
Received: from XXX.wcomnet.com ([XXX.XXX.XXX.XXX])
 by XXX.wcomnet.com (PMDF V5.2-33 #42262)
 with ESMTP id [EMAIL PROTECTED] for
 [EMAIL PROTECTED]; Thu, 09 Aug 2001 20:32:57 + (GMT)
Received: from XXX.XXX.XXX.XXX by XXX.wcomnet.com  with Microsoft
 SMTPSVC(5.5.1774.114.11); Thu, 09 Aug 2001 15:24:25 -0500
Date: Thu, 09 Aug 2001 15:24:52 -0500
From: [EMAIL PROTECTED]
Bcc: 
Message-id: [EMAIL PROTECTED]

This is a test message 



[2001-08-09 17:32:37] [EMAIL PROTECTED]

Here's headers from a bad email:

Return-Path: [EMAIL PROTECTED]
Received: from XXX.wcomnet.com ([XXX.XXX.XXX.XXX]) by
  XXX.XXX.XXX.XXX (Netscape Messaging Server 4.15) with
ESMTP
  id GHT2IQ00.KNI; Thu, 9 Aug 2001 14:49:38 + 
Return-path: [EMAIL PROTECTED]
Received: from CONVERSION-DAEMON by dgismtp03.wcomnet.com (PMDF V5.2-33
#42262)
 id [EMAIL PROTECTED]; Thu,
 9 Aug 2001 14:49:37 + (GMT)
Received: from XXX.wcomnet.com by XXX.wcomnet.com
 (PMDF V5.2-33 #42262) with SMTP id
[EMAIL PROTECTED];
 Thu, 09 Aug 2001 14:49:36 + (GMT)
Received: from XXX.wcomnet.com ([XXX.XXX.XXX.XXX])
 by XXX.wcomnet.com (PMDF V5.2-33 #42262)
 with ESMTP id [EMAIL PROTECTED]; Thu,
 09 Aug 2001 14:49:14 + (GMT)
Received: from XXX.XXX.XXX.XXX by XXX.wcomnet.com  with Microsoft
 SMTPSVC(5.5.1774.114.11); Thu, 09 Aug 2001 09:41:11 -0500
Date: Thu, 09 Aug 2001 09:41:11 +0600
From: [EMAIL PROTECTED]
Subject: XXX
X-Sender: [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
Reply-to: [EMAIL PROTECTED]
Message-id: [EMAIL PROTECTED]



[2001-08-09 17:27:30] [EMAIL PROTECTED]

Here's the portion of the script that governs mail:

if (isset($mail_from) || isset($mail_cc)) {
  $mail_headers = From: $mail_from\r\nReply-to: $mail_from\r\n;

  if (isset($mail_cc)  ($mail_cc != )) {
$mail_headers = $mail_headers . Cc: $mail_cc\r\n;
  }
}
else {
  $mail_headers = ;
}

if (isset($mail_to)  isset($mail_subject)  isset($mail_body)  
isset($mail_headers)  ($submit == Submit)) {

  mail($mail_to, $mail_subject, $mail_body, $mail_headers);





The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/?id=12680


Edit this bug report at http://bugs.php.net/?id=12680edit=1


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Re: [PHP-CVS] cvs: php4 /ext/sablot php_sablot.h

2001-08-10 Thread Andi Gutmans

At 09:31 AM 8/10/2001 -0500, Andrei Zmievski wrote:
On Fri, 10 Aug 2001, [EMAIL PROTECTED] wrote:
  This is not about renaming, it's about removing duplicate macro's.

Of course it's about renaming. We used to have just PHP_* macros and
then Zeev added the ZEND_* versions and now PHP_* ones are just aliased
to ZEND_* ones for backwards compatibility.

Well we obviously needed to have those macros in the Zend Engine because 
it's the Zend Engine's API. Therefore, aliasing the PHP macros to the Zend 
ones makes more sense than making a new copy of all of the API macros and 
functions.

Andi


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Engine 2

2001-08-10 Thread Andi Gutmans

By the way, one of the things that interests me is exactly how much this 
change breaks people's code. My guess is that it won't break most people's 
apps. In any case, there will probably be a compat mode where the old 
copying is forced.

Andi

At 05:31 PM 8/10/2001 +0300, Heikki Korpela wrote:
On Fri, 10 Aug 2001, Andi Gutmans wrote:

  I'm also
  interested in how many scripts are actually broken by the fact that objects
  are not copied when sent to functions by value and so on.

Did I get this right:

?php
function func1($object) {
 $object-foo = 'bar';
}

function func2() {
 $object = new StdClass;
 $object-foo = 'not bar';
 func1($object);
 echo $object-foo;
}
func2();
?

After the engine change, the above would print 'bar'?


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Bug #12680 Updated: mail() is sent with incorrect timezone

2001-08-10 Thread justin . white

ID: 12680
User updated by: [EMAIL PROTECTED]
Reported By: [EMAIL PROTECTED]
Old Status: Feedback
Status: Open
Bug Type: Mail related
Operating System: Windows NT 4.0 SP6
PHP Version: 4.0.6
New Comment:

This happens with just PHP.  As I said, I can directly connect to port 25 and manually 
enter SMTP commands to send an email (see second mail header sample).  The timezone 
correctly shows -0500 for CDT.  The time listed in the PHP-created email shows the 
time correctly, but doesn't show the timezone correctly (see first mail header sample).

Previous Comments:


[2001-08-10 10:32:55] [EMAIL PROTECTED]

Does this happen with just PHP, or with any mail program
that you use?



[2001-08-10 10:26:31] [EMAIL PROTECTED]

Yes, the timezone and time have been verified on the server and on my workstation.  
Both are set to CDT (-0500).

The test email reflected the correct timezone, but the PHP-created one did not.



[2001-08-10 09:45:56] [EMAIL PROTECTED]

Is the timezone on your mailserver the same as the zone on your
computer???



[2001-08-09 17:35:02] [EMAIL PROTECTED]

Here's the headers from the email I sent via telnet:

Return-Path: [EMAIL PROTECTED]
Received: from XXX.wcomnet.com ([XXX.XXX.XXX.XXX]) by
  XXX.wcomnet.com (Netscape Messaging Server 4.15) with ESMTP
  id GHTIG600.IEW for [EMAIL PROTECTED]; Thu, 9 Aug 2001
  20:33:42 + 
Return-path: [EMAIL PROTECTED]
Received: from CONVERSION-DAEMON by XXX.wcomnet.com (PMDF V5.2-33 #42262)
 id [EMAIL PROTECTED] for [EMAIL PROTECTED]; Thu,
 9 Aug 2001 20:33:42 + (GMT)
Received: from XXX.wcomnet.com by XXX.wcomnet.com
 (PMDF V5.2-33 #42262) with SMTP id [EMAIL PROTECTED] for
 [EMAIL PROTECTED]; Thu, 09 Aug 2001 20:33:39 + (GMT)
Received: from XXX.wcomnet.com ([XXX.XXX.XXX.XXX])
 by XXX.wcomnet.com (PMDF V5.2-33 #42262)
 with ESMTP id [EMAIL PROTECTED] for
 [EMAIL PROTECTED]; Thu, 09 Aug 2001 20:32:57 + (GMT)
Received: from XXX.XXX.XXX.XXX by XXX.wcomnet.com  with Microsoft
 SMTPSVC(5.5.1774.114.11); Thu, 09 Aug 2001 15:24:25 -0500
Date: Thu, 09 Aug 2001 15:24:52 -0500
From: [EMAIL PROTECTED]
Bcc: 
Message-id: [EMAIL PROTECTED]

This is a test message 



[2001-08-09 17:32:37] [EMAIL PROTECTED]

Here's headers from a bad email:

Return-Path: [EMAIL PROTECTED]
Received: from XXX.wcomnet.com ([XXX.XXX.XXX.XXX]) by
  XXX.XXX.XXX.XXX (Netscape Messaging Server 4.15) with
ESMTP
  id GHT2IQ00.KNI; Thu, 9 Aug 2001 14:49:38 + 
Return-path: [EMAIL PROTECTED]
Received: from CONVERSION-DAEMON by dgismtp03.wcomnet.com (PMDF V5.2-33
#42262)
 id [EMAIL PROTECTED]; Thu,
 9 Aug 2001 14:49:37 + (GMT)
Received: from XXX.wcomnet.com by XXX.wcomnet.com
 (PMDF V5.2-33 #42262) with SMTP id
[EMAIL PROTECTED];
 Thu, 09 Aug 2001 14:49:36 + (GMT)
Received: from XXX.wcomnet.com ([XXX.XXX.XXX.XXX])
 by XXX.wcomnet.com (PMDF V5.2-33 #42262)
 with ESMTP id [EMAIL PROTECTED]; Thu,
 09 Aug 2001 14:49:14 + (GMT)
Received: from XXX.XXX.XXX.XXX by XXX.wcomnet.com  with Microsoft
 SMTPSVC(5.5.1774.114.11); Thu, 09 Aug 2001 09:41:11 -0500
Date: Thu, 09 Aug 2001 09:41:11 +0600
From: [EMAIL PROTECTED]
Subject: XXX
X-Sender: [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
Reply-to: [EMAIL PROTECTED]
Message-id: [EMAIL PROTECTED]



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/?id=12680


Edit this bug report at http://bugs.php.net/?id=12680edit=1


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Bug #12691: Server variables don't get set

2001-08-10 Thread teo

From: [EMAIL PROTECTED]
Operating system: SuSE7.1
PHP version:  4.0CVS-2001-08-10
PHP Bug Type: Apache related
Bug description:  Server variables don't get set

Apache 2.0.24-dev
PHP4-200108091635

CFLAGS='-O6 -fomit-frame-pointer' \
'./configure' \
  

'--with-apxs2=/usr/local/apache2/bin/apxs' \   
  

'--with-mysql' \   
  

'--disable-posix' \
  

'--disable-pic' \  
  

'--with-zlib' \
  

'--enable-wddx' \

Looks like PHP doesn't import SERVER_* environment variables:
e.g.
?php print getenv('SERVER_NAME')?
or
?php print $_SERVER['SERVER_NAME']?

yeilds nothin'

-- tedor
-- 
Edit bug report at: http://bugs.php.net/?id=12691edit=1


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] PHP in a Hyper-secure environment

2001-08-10 Thread John Lim

I would suggest using a template class such as Smarty - then you only allow
a limited set of PHP functions to be used which you can define.

See http://www.phpinsider.com/php/code/Smarty/

Regards, John

James Moore [EMAIL PROTECTED] wrote in message
008101c1218f$805664b0$c04c01d5@hound">news:008101c1218f$805664b0$c04c01d5@hound...
 anychance of writing your complex functions in C? then you can do exectly
 what you want.

 - James
 - Original Message -
 From: Howie Oakes [EMAIL PROTECTED]
 To: [EMAIL PROTECTED]; [EMAIL PROTECTED]
 Sent: Friday, August 10, 2001 2:55 PM
 Subject: Re: [PHP-DEV] PHP in a Hyper-secure environment


  Hello-
 
  I realize I can have per-directory settings, however the issue is that I
  want a web developer to be able to use a simplified version of PHP on a
  page, yet still be able to call encoded functions that have access to
the
  full version of PHP, without allowing them direct access to that code.
 
  I had a crazy thought...Could I set up PHP to parse the page twice? One
  time looking for my complex funcions prefixed with a special
name...using
 a
  full version of PHP, and then parse it a seccond time running all the
  regular PHP code?
 
  -Howie
 
 
  
   Does anyone have any ideas? I basically want to run 2 versions of PHP
 at
   the same time, and access them from the same page. If you zend encode
a
   script, can I get it to refer to a different php.ini? Is the php.ini
 file
   read when a script is executed, or does it get read only when you
start
   apache?
  
  If you are running Apache, you can use the .htaccess file to pass
 settings
  to individual directories; for an example see:
  
   http://iki.fi/heko/utils/conf/dot-files/dot-htaccess
  
  The php.ini file is only read once per server startup.
  
  
  
  
 
 
  --
  PHP Development Mailing List http://www.php.net/
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail: [EMAIL PROTECTED]
  To contact the list administrators, e-mail: [EMAIL PROTECTED]




-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Bug #12680 Updated: mail() is sent with incorrect timezone

2001-08-10 Thread alindeman

ID: 12680
Updated by: alindeman
Reported By: [EMAIL PROTECTED]
Old Status: Open
Status: Suspended
Bug Type: Mail related
Operating System: Windows NT 4.0 SP6
PHP Version: 4.0.6
New Comment:

something similar has been reported as a bug in 4.0 and was
assigned to hholzgra.  I don't know if it has been fixed.

Suspended until I can contact him and see if he's fixed it.

If anybody else knows anything about this, second opinion is
welcome.

Previous Comments:


[2001-08-10 10:36:59] [EMAIL PROTECTED]

This happens with just PHP.  As I said, I can directly connect to port 25 and manually 
enter SMTP commands to send an email (see second mail header sample).  The timezone 
correctly shows -0500 for CDT.  The time listed in the PHP-created email shows the 
time correctly, but doesn't show the timezone correctly (see first mail header sample).



[2001-08-10 10:32:55] [EMAIL PROTECTED]

Does this happen with just PHP, or with any mail program
that you use?



[2001-08-10 10:26:31] [EMAIL PROTECTED]

Yes, the timezone and time have been verified on the server and on my workstation.  
Both are set to CDT (-0500).

The test email reflected the correct timezone, but the PHP-created one did not.



[2001-08-10 09:45:56] [EMAIL PROTECTED]

Is the timezone on your mailserver the same as the zone on your
computer???



[2001-08-09 17:35:02] [EMAIL PROTECTED]

Here's the headers from the email I sent via telnet:

Return-Path: [EMAIL PROTECTED]
Received: from XXX.wcomnet.com ([XXX.XXX.XXX.XXX]) by
  XXX.wcomnet.com (Netscape Messaging Server 4.15) with ESMTP
  id GHTIG600.IEW for [EMAIL PROTECTED]; Thu, 9 Aug 2001
  20:33:42 + 
Return-path: [EMAIL PROTECTED]
Received: from CONVERSION-DAEMON by XXX.wcomnet.com (PMDF V5.2-33 #42262)
 id [EMAIL PROTECTED] for [EMAIL PROTECTED]; Thu,
 9 Aug 2001 20:33:42 + (GMT)
Received: from XXX.wcomnet.com by XXX.wcomnet.com
 (PMDF V5.2-33 #42262) with SMTP id [EMAIL PROTECTED] for
 [EMAIL PROTECTED]; Thu, 09 Aug 2001 20:33:39 + (GMT)
Received: from XXX.wcomnet.com ([XXX.XXX.XXX.XXX])
 by XXX.wcomnet.com (PMDF V5.2-33 #42262)
 with ESMTP id [EMAIL PROTECTED] for
 [EMAIL PROTECTED]; Thu, 09 Aug 2001 20:32:57 + (GMT)
Received: from XXX.XXX.XXX.XXX by XXX.wcomnet.com  with Microsoft
 SMTPSVC(5.5.1774.114.11); Thu, 09 Aug 2001 15:24:25 -0500
Date: Thu, 09 Aug 2001 15:24:52 -0500
From: [EMAIL PROTECTED]
Bcc: 
Message-id: [EMAIL PROTECTED]

This is a test message 



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/?id=12680


Edit this bug report at http://bugs.php.net/?id=12680edit=1


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Bug #3248 12680

2001-08-10 Thread Andrew Lindeman formally [EMAIL PROTECTED]

In bug #3248, you assigned a timezone/mail
problem to yourself.  Now a similar bug (12680)
has been reported in 4.0.6.  Has this been fixed
or does it need to be looked at again?

-- 
-
Andy :)
Black holes are where God divided by zero.

-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Re: [PHP-CVS] cvs: php4 /ext/sablot php_sablot.h

2001-08-10 Thread Zeev Suraski

Guys,

It's really simple, even trivial soft-dev issue, which is discussed in a 
completely broken manner, because you pour politics into the picture.

The Zend Engine is the infrastructure of PHP.  Until there's another 
engine, which is nowhere at sight nor is there any good reason to have one, 
PHP has one way dependency on the Zend engine, and is basically an app 
built on top of it.  As such, it uses its macros, data types and functions.

Duplicating the macros was bad.  Period.  There's no argument about it from 
a soft-dev point of view.  It's the basic rule of no-code-duplication.  I 
hope nobody disagrees with me on that one.

So, where should the macros reside?  Let's see.  They can either reside in 
the app that uses them, or the infrastructure that defines their very 
existence.  That's not a very tough call in my book (Jason - you got it 
pretty wrong with the 'so is any other scripting engine';  The Zend API, on 
top of which PHP is built is very specific, and there's no other engine in 
existence that implements any API which resembles it;  PHP is already 
tightly coupled with this infrastructure, long before I nuked the macro bloat).

Sascha's right, in the sense that if we were to abstract PHP to support 
multiple engines, the API and the implementation of the API wouldn't have 
been the same.  In that case, PHP would have had some glue layer between 
itself and whatever engine it was using.  At the risk of encouraging Sascha 
to write a new engine just to make a point, we aren't in a situation where 
we need to abstract PHP for multiple engines, nor is there any good reason 
for ever arriving to such a situation.  We're not ASP with several 
pluggable syntaxes.

Do PHP modules contain too many ZEND strings?  Just as much as they should, 
since in practice, they are Zend modules.  We can still define PHP macros 
to wrap the Zend ones for 'political' reasons, I personally think it's 
childish, but it wouldn't be a first...  The advantage to using the Zend 
API macros directly is that the modules could be compiled outside the 
context of PHP, and load into the engine in other apps that use this engine 
in the future.  This is just another example of why the basic soft-dev rule 
of putting the infrastructure-derived macros in the infrastructure and not 
in the application on top of it is correct.

Zeev

At 17:21 10-08-01, Jason Greene wrote:
  Is this really what the goal is here?  It seems like a contest to see how
  many times Zend can appear in the code.  I think some of this stuff
  should be PHP_ or for things that really are engine related, perhaps
  ENGINE_ to at least pretend that this is a modular architecture where if
  someone was brave enough they could try to use the modularity and plug in
  another engine.
 
  There was no need to write this long Email just to make the simple point
  that you want to make PHP modular in the other way, which it isn't and
  never designed to be.  Yes, PHP is completely dependant on the Zend 
 engine,
  and it's not supposed to be easy to plug in another scripting 
 engine.  When
  Andi and I separate the engine from PHP it was with one goal - having the
  ability to reuse it in applications other than PHP.  I remember that you
  immediately thought about it the other way around, but it's not any more
  true today as it was then, and if you recall, I told you that right
  away.  An app built on a certain infrastructure is dependant on that
  infrastructure, but not the other way around.
 
  However, if everyone on php-dev thinks the above look to a PHP extension
  is just fine, I'll stop bickering.
 
  I'm +1 on that :)
 
  Zeev

I do have to agree with Rasmus here. Yes, Zeev, PHP is completely dependant on
its engine, but the macro names are not acting like a truly modular 
system. The analogy
I come up with here is a hash table data structure. What if instead of 
having a neutral
hash_function = weinberger_hash, you had weinberger_hash = whatever. This name
convention really does not make much sence, becuase it implys that every hash
function must be a weinberger algorythym.

If you take a look at the ZEND_FUNCTION macro, this suggests to the module
developer that he is writing a function for the ENGINE not the language. 
You are
right that it is the engine's job to register functions, module names, 
etc. However
that is the description of ANY engine, not just Zend. If you are to say 
that you
are modular you MUST be able to clearly differiantiate between all the 
modules
of the system, and yes any of those module should be capable of being 
replaced.

I am not saying that anyone should even try to replace the engine, but I 
am saying
there should be clear distinction between the components of PHP. If I 
could argue
anything else, I would argue simple readibility. It should be clear to the 
PHP developers
that they are using the systems API not one module that is a part of the 
system even if
that module is the engine.

-Jason














 
  

Re: [PHP-DEV] Re: [PHP-CVS] cvs: php4 /ext/sablot php_sablot.h

2001-08-10 Thread Zeev Suraski

At 17:31 10-08-01, Andrei Zmievski wrote:
On Fri, 10 Aug 2001, [EMAIL PROTECTED] wrote:
  This is not about renaming, it's about removing duplicate macro's.

Of course it's about renaming. We used to have just PHP_* macros and
then Zeev added the ZEND_* versions and now PHP_* ones are just aliased
to ZEND_* ones for backwards compatibility.

 From a technical perspective, if I change the prototype of the activation 
function, which is obviously in the engine, how does it make sense that 
I'll have to change macros outside the engine, instead of changing them 
inside the engine?  Or worse, change them in two places?

If there's more Zend-o-phobia, we can have #define PHP_* ZEND_* for some 
Zend macros.  I see a benefit in having modules compile independently of 
PHP so that they can plug into the stand alone engine in the future, but 
frankly, I don't care too much - we can move them to php.h instead of 
php3_compat.h.  It doesn't change the fact that the replicated macros had 
to go.

Zeev


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]