Oh wow, that's a odd quirk to have.
Mon Sep 11, 2023 2:36pm

I would have also assumed that not set = false.

Is the 'define' sub yours or a PHP thing?

  • Well that's done... - Puckdropper, Sun Sep 10 2023 1:20am
    I had to: define("SETTINGS_STATUS", "Good.", true) instead of define("SETTINGS_STATUS", true, true); because PHP interpreted SETTINGS_STATUS to be true even if it was never set. Some thing about it not being null or something, I guess.
    • Oh wow, that's a odd quirk to have.- Erik_, Mon Sep 11 2023 2:36pm
      • It's a PHP thing. If you define the symbol, you can use it - Puckdropper, Tue Sep 12 2023 3:08am
        elsewhere in your code. Kinda like a global, but not really a global. (And globals aren't. You have to explicitly tell your subroutine to use the global variable.) You'd think, and even a function checking for existence would tell you it didn't exist, but nothing really seemed to work. Perhaps... more
        • because == wasn't equal enough. I think I found why it was evaluating to true if it wasn't defined in one of the comments in the PHP Manual: Be aware that if "Notice"-level error reporting is turned off, then trying to use a constant as a variable... more
          • I think PHP has === too......... - Puckdropper, Fri Sep 15 2023 5:51am
            What really got me about the comment was everything before the comma: Be aware that if "Notice"-level error reporting is turned off, WHAT! The program behaves differently if a certain type of error reporting is enabled? I'd have never even thought about that as a possibility. The car pulls to... more
            • I didn't even catch that! - Erik_, Sat Sep 16 2023 10:17am
              That's crazy. It's like they took Perl's "use strict" and "use warnings" and combined them under just warnings for some reason.
"Forces act when not restrained" - Puckdropper