嗨,各位先进大家好,肥宅我遇到一个global变量的问题
首先我有一只pdo.php,内建一个class,前人写的连线资讯是一只cntdb.php
cntdb.php会宣告一个阵列$db_array,内含数据库的连线资讯
故我再pdo的class建构子内宣告global $db_array,方便读取数据库连线资讯
然后member.php内有一个class member,其中有一个memberInfo的function
memberInfo我需要使用pdo连线,于是我再member.php最上层include_once pdo.php
问题来了,今天有一只a.php呼叫$member->memberInfo();的时候,pdo建立连线失败
最后查到是因为$db_array再那个情境下已经变空了
但是我自己写一支很单纯只有include member.php的php,一样去呼叫
$member->memberInfo();,却可以透过PDO连线到数据库
我原本想说是不是$db_array这个变量重复,导致global失效
后来将$db_array改成$db_array2018、$db_array20180925等等
也一样拿不到$db_array
不知道有没有哪个大大可以帮忙推测或指点可能的原因?
是再想说有没有可能是php有禁止使用global的可能?