Php 需要跨不同文件、全局范围执行一次

Php 需要跨不同文件、全局范围执行一次,php,mysql,variables,scope,require-once,Php,Mysql,Variables,Scope,Require Once,我已经学习PHP几天了,我遇到了一个奇怪的问题。我有两个文件: login.php存储数据库访问数据(用户、pw、主机、数据库) security.php具有操作字符串/查询以防止sql/xss注入的函数,还存储用于密码哈希的salt前缀和后缀 然后是我的index.php,register.php和signin.php。我的问题是:当我放置require_once'../login.php'时

我已经学习PHP几天了,我遇到了一个奇怪的问题。我有两个文件:

login.php
存储数据库访问数据(用户、pw、主机、数据库)
security.php
具有操作字符串/查询以防止sql/xss注入的函数,还存储用于密码哈希的salt前缀和后缀

然后是我的
index.php
register.php
signin.php
。我的问题是:当我放置
require_once'../login.php'时register.php
中,我通常可以调用$var之类的变量或函数。另一方面,与
signin.php
中的模式完全相同的模式不起作用,php告诉我们变量没有声明。我试着去做:
global$var
,它是有效的,但我觉得它完全不安全

1) 解决这个问题的正确方法是什么?
2) 是否与应用程序架构连接?

3) 是否所有使用db连接的函数(等)都应写入一个文件?

步骤1-创建一个php文件,将所有数据库连接写入该文件(示例-db.php)
步骤2-在任何与数据库相关的操作中都包含此php(db.php)。

require 'db.php'; //add your database php file here.. 需要'db.php'//在此处添加数据库php文件。。

这将很容易组织,并将应用程序从一台服务器迁移到另一台服务器时的错误降至最低 在php中有require和include。require很好,因为如果文件不可用,它将停止执行代码。


这也很容易组织,并将从一台服务器迁移到另一台服务器时产生的错误降至最低

步骤1-创建一个php文件,将所有数据库连接写入其中(示例-db.php)
步骤2-在任何与数据库相关的操作中都包含此php(db.php)。

require 'db.php'; //add your database php file here.. 需要'db.php'//在此处添加数据库php文件。。

这将很容易组织,并将应用程序从一台服务器迁移到另一台服务器时的错误降至最低 在php中有require和include。require很好,因为如果文件不可用,它将停止执行代码。

这也很容易组织,并将从一台服务器迁移到另一台服务器时产生的错误降至最低

  • 安装
  • 将所有代码放入类中的函数中(如果必须的话,作为静态函数)
  • 像在lib dir中指定的那样保存类
  • 按照composer网站上的指定创建composer.json文件,并按照composer文档中的说明自动加载lib dir
  • 在文件中需要\u onceprojectroot/vendor/autoload.php 调用类方法(使用命名空间)而不是函数。懒惰。避免要求/包括地狱

  • 安装
  • 将所有代码放入类中的函数中(如果必须的话,作为静态函数)
  • 像在lib dir中指定的那样保存类
  • 按照composer网站上的指定创建composer.json文件,并按照composer文档中的说明自动加载lib dir
  • 在文件中需要\u onceprojectroot/vendor/autoload.php 调用类方法(使用命名空间)而不是函数。懒惰。避免要求/包括地狱

    另见