Quick question...

php.internals

Lars Torben Wilson

23 years ago
Just wanted to check that I'm reading this right before committing to the docs: does print() return 1, always? The following seems to indicate so: case ZEND_PRINT: zend_print_variable(get_zval_ptr(&EX(opline)->op1, EX(Ts), &EG(free_op1), BP_VAR_R)); EX(Ts)[EX(opline)->result.u.var].tmp_var.value.lval = 1; EX(Ts)[EX(opline)->result.u.var].tmp_var.type = IS_LONG; FREE_OP(EX(Ts), &EX(opline)->op1, EG(free_op1)); NEXT_OPCODE(); Thanks, Torben
-- Torben Wilson <torben@php.net> +1.604.709.0506 http://www.thebuttlesschaps.com http://www.inflatableeye.com http://www.hybrid17.com http://www.themainonmain.com -----==== Boycott Starbucks! http://www.haidabuckscafe.com ====-----

Sterling Hughes

23 years ago
Yep. -Sterling On Thu, 2003-06-05 at 17:01, Lars Torben Wilson wrote:
> Just wanted to check that I'm reading this right before committing > to the docs: does print() return 1, always? The following seems to > indicate so: > > case ZEND_PRINT: > zend_print_variable(get_zval_ptr(&EX(opline)->op1, EX(Ts), > &EG(free_op1), BP_VAR_R)); > EX(Ts)[EX(opline)->result.u.var].tmp_var.value.lval = 1; > EX(Ts)[EX(opline)->result.u.var].tmp_var.type = IS_LONG; > FREE_OP(EX(Ts), &EX(opline)->op1, EG(free_op1)); > NEXT_OPCODE(); > > > Thanks, > > Torben > > -- > Torben Wilson <torben@php.net> +1.604.709.0506 > http://www.thebuttlesschaps.com http://www.inflatableeye.com > http://www.hybrid17.com http://www.themainonmain.com > -----==== Boycott Starbucks! http://www.haidabuckscafe.com ====----- >
-- "Whether you think you can or think you can't -- you are right." - Henry Ford

Lars Torben Wilson

23 years ago
On Thu, 2003-06-05 at 14:00, Sterling Hughes wrote:
> Yep. > > -Sterling > > On Thu, 2003-06-05 at 17:01, Lars Torben Wilson wrote: > > Just wanted to check that I'm reading this right before committing > > to the docs: does print() return 1, always? The following seems to > > indicate so: > > > > case ZEND_PRINT: > > zend_print_variable(get_zval_ptr(&EX(opline)->op1, EX(Ts), > > &EG(free_op1), BP_VAR_R)); > > EX(Ts)[EX(opline)->result.u.var].tmp_var.value.lval = 1; > > EX(Ts)[EX(opline)->result.u.var].tmp_var.type = IS_LONG; > > FREE_OP(EX(Ts), &EX(opline)->op1, EG(free_op1)); > > NEXT_OPCODE();
Thanks! Torben
-- Torben Wilson <torben@php.net> +1.604.709.0506 http://www.thebuttlesschaps.com http://www.inflatableeye.com http://www.hybrid17.com http://www.themainonmain.com -----==== Boycott Starbucks! http://www.haidabuckscafe.com ====-----

Andi Gutmans

23 years ago
At 05:00 PM 6/5/2003 -0400, Sterling Hughes wrote:
>Yep. > >-Sterling > >On Thu, 2003-06-05 at 17:01, Lars Torben Wilson wrote: > > Just wanted to check that I'm reading this right before committing > > to the docs: does print() return 1, always? The following seems to > > indicate so: > > > > case ZEND_PRINT: > > zend_print_variable(get_zval_ptr(&EX(opline)->op1, EX(Ts), > > &EG(free_op1), BP_VAR_R)); > > EX(Ts)[EX(opline)->result.u.var].tmp_var.value.lval = 1; > > EX(Ts)[EX(opline)->result.u.var].tmp_var.type = IS_LONG; > > FREE_OP(EX(Ts), &EX(opline)->op1, EG(free_op1)); > > NEXT_OPCODE();
Hmm, it could actually be changed to return bool(true). Maybe we kept it like this for PHP 3 compatibility but we can change it for PHP 5 IMO because I doubt ppl use the return value as a number. Andi