Doc #80149 [Fbk]: Mutually included files

From: Date: Sat, 26 Sep 2020 19:50:34 +0000
Subject: Doc #80149 [Fbk]: Mutually included files
References: 1  Groups: php.doc.bugs 
Request: Send a blank email to doc-bugs+get-17911@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=80149&edit=1

 ID:                 80149
 Updated by:         requinix@php.net
 Reported by:        marcio dot a dot siena at gmail dot com
 Summary:            Mutually included files
 Status:             Feedback
 Type:               Documentation Problem
 Package:            Documentation problem
 PHP Version:        Irrelevant
 Block user comment: N
 Private report:     N

 New Comment:

I wasn't telling you to ragequit. I was saying that

> So one must make tests to be sure about PHP's true behavior.

the current behavior is correct.

@danack asked you

> [The doc is] pretty clear to me. If you don't think it is, can you suggest where and how
> it should be documented?

Are you still willing to answer that?


Previous Comments:
------------------------------------------------------------------------
[2020-09-26 19:41:51] marcio dot a dot siena at gmail dot com

Ok, I will not argue.

If you have to do a get_included_files() instead of simply and clearly see it stated in the docs, so
be it.

Thank you anyway.

Bye.

------------------------------------------------------------------------
[2020-09-26 19:38:32] requinix@php.net

The documentation does not say "...if the file has already been included by the use of
include/require/include_once/require_once()".

The fact is that a1 was included at the beginning *by PHP*. And that counts. And if you dump
get_included_files() inside a1 then you'll see a1 in the list of files.

------------------------------------------------------------------------
[2020-09-26 12:05:46] marcio dot a dot siena at gmail dot com

Hi.

Sorry if I was not clear.

The main file, a1.php, is the file *requested* by the browser.

Then it includes b1.php. Only THEN, from b1.php, a1.php (the originally requested file) is
included/required.

------------------------------------------------------------------------
[2020-09-25 13:05:04] danack@php.net

"but the require_once in b.php does not re-include a.php. But that behavior is not explicitly
stated in the relevant documentation pages:"


From the manual https://www.php.net/manual/en/function.require-once.php:
"The require_once statement is identical to require except PHP will check if the file has
already been included, and if so, not include (require) it again."

That is pretty clear to me. If you don't think it is, can you suggest where and how it should
be documented?

------------------------------------------------------------------------
[2020-09-25 13:01:09] marcio dot a dot siena at gmail dot com

More complete scripts:

a1.php:
------

<?php

    echo "INSIDE a1.php <br><br>";
    require_once($_SERVER['DOCUMENT_ROOT'] . "/b1.php");

?>


b1.php:
------
<?php

    echo "INSIDE b1.php <br><br>";
    require_once($_SERVER['DOCUMENT_ROOT'] . "/a1.php");

?>

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


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

    https://bugs.php.net/bug.php?id=80149


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


Thread (10 messages)

« previous php.doc.bugs (#17911) next »