Bug #71812 [Fbk]: wrong code example in php doc

From: Date: Mon, 14 Mar 2016 04:10:55 +0000
Subject: Bug #71812 [Fbk]: wrong code example in php doc
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-199803@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=71812&edit=1

 ID:                 71812
 Updated by:         requinix@php.net
 Reported by:        marcosptf at yahoo dot com dot br
 Summary:            wrong code example in php doc
 Status:             Feedback
 Type:               Bug
 Package:            Scripting Engine problem
 Operating System:   Fedora 20
 PHP Version:        ?
 Block user comment: N
 Private report:     N

 New Comment:

Try without Xdebug.


Previous Comments:
------------------------------------------------------------------------
[2016-03-13 14:54:41] marcosptf at yahoo dot com dot br

that's my version, i'll test in another computer with php7.0.

[root@localhost ~]# php --version
PHP 5.5.26 (cli) (built: Jun 11 2015 08:25:51) 
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies
    with Xdebug v2.2.7, Copyright (c) 2002-2015, by Derick Rethans

thanks for feedback!

------------------------------------------------------------------------
[2016-03-13 07:10:46] requinix@php.net

https://3v4l.org/RPAHG

Are you testing with PHP 7? Looks like there were problems with 7.0.0-3 that have been fixed with
7.0.4.

------------------------------------------------------------------------
[2016-03-13 06:53:47] marcosptf at yahoo dot com dot br

Description:
------------
Hello to everyone!!!

here ===> http://php.net/manual/en/function.forward-static-call-array.php
the docs is fine, the description about this function work is totally correct, but the code example,
is wrong;

i have write a php test to this function, and i see that the code example is fine but have a
mistake.

here ===>  https://www.flickr.com/photos/marcosptf/25445244080/in/dateposted-public/
we can see if copy + paste from official php doc the code to run in php -a terminal, the result is a
warning because the function test() is call before exist.

here ===> https://www.flickr.com/photos/marcosptf/25119350863/in/dateposted-public/
we can see if move the function test() to top of code, works fine

i have open a pr to test this function ====> https://github.com/php/php-src/pull/1810

and open this bug to someone fix this mistake.

thanks from php-sp Brazil!!!!

Test script:
---------------
<?php

class A
{
    const NAME = 'A';
    public static function test() {
        $args = func_get_args();
        echo static::NAME, " ".join(',', $args)." \n";
    }
}

class B extends A
{
    const NAME = 'B';

    public static function test() {
        echo self::NAME, "\n";
        forward_static_call_array(array('A', 'test'), array('more',
'args'));
        forward_static_call_array( 'test', array('other', 'args'));
    }
}

B::test('foo');

function test() {
        $args = func_get_args();
        echo "C ".join(',', $args)." \n";
    }

?>


Expected result:
----------------
B
B more,args 
C other,args

Actual result:
--------------
B
B more,args 
PHP Warning:  forward_static_call_array() expects parameter 1 to be a valid callback, function
'test' not found or invalid function name in php shell code on line 8
PHP Stack trace:
PHP   1. {main}() php shell code:0
PHP   2. B::test() php shell code:1
PHP   3. forward_static_call_array() php shell code:8



------------------------------------------------------------------------



--
Edit this bug report at https://bugs.php.net/bug.php?id=71812&edit=1


Thread (1 message)

  • requinix@php.net
  • Unknown Message
    • requinix@php.net
« previous php.bugs (#199803) next »