Bug #71812 [Opn->Fbk]: wrong code example in php doc
| From: | requinix@php.net | Date: | Sun, 13 Mar 2016 07:10:47 +0000 |
| Subject: | Bug #71812 [Opn->Fbk]: wrong code example in php doc | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-199789@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: Open
+Status: Feedback
Type: Bug
-Package: Documentation problem
+Package: Scripting Engine problem
Operating System: Fedora 20
-PHP Version: Irrelevant
+PHP Version: ?
Block user comment: N
Private report: N
New Comment:
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.
Previous Comments:
------------------------------------------------------------------------
[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