Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在函数内部使用require__Php_Mysql - Fatal编程技术网

Php 如何在函数内部使用require_

Php 如何在函数内部使用require_,php,mysql,Php,Mysql,你好,我想在函数中使用require_一次,但不工作???实际上,我的页面中有三个函数,我如何才能做到这一点。。。。它在外面工作,而不是在里面工作 有人吗 这是我的密码: <?php //************************************** // Page load dropdown results // //************************************** function getTie

你好,我想在函数中使用require_一次,但不工作???实际上,我的页面中有三个函数,我如何才能做到这一点。。。。它在外面工作,而不是在里面工作

有人吗

这是我的密码:

 <?php
    //**************************************
    //     Page load dropdown results     //
    //**************************************
    function getTierOne()
    {
        require_once('../config.php');
        $provincequery="SELECT provinces.ProvinceID, provinces.ProvinceName FROM provinces WHERE ProvinceID > 0";
$result=$coon->query($provincequery); // mysqli neeeds connection while running the query
          while($province = mysql_fetch_array($result)) 
            {
               echo '<option value="'.$province['ProvinceID'].'">'.$province['ProvinceName'].'</option>';
            }

    }

首先,我不建议在函数中使用require\u一次,也不建议在函数中使用require\u,虽然可以使用,但我个人遇到了一些问题,并通过使用include\u解决了问题,这似乎可以修复错误

另外一件您可能需要研究的事情是,查找文件所在位置的绝对pth,例如/home/username/public_html/system/core.php

你会用这样的东西吗

include_once("/home/username/public_html/system/core.php"); 
这将解决您遇到的任何问题


另一方面,您不应该将配置文件或脚本任何状态下所需的任何文件放在函数中,无论您是否使用它,都应该始终调用该函数。据我所知,这是mysql connect文件,所以我总是先把它放在最上面。

实际上,从技术角度来看,您可以在函数中使用
require\u once()
。然而,这很可能是个坏主意,而不是你真正想做的:

  • 包含函数中的代码实际上包含函数中的代码。这意味着所有包含的代码都在函数范围内进行计算。PHP将所有函数声明为全局函数,但变量和纯代码序列是局部绑定的,因此在当前执行的函数外部不可见

  • 由于使用相对路径加载包含的文件,因此您只能在特定文件系统级别内执行函数。这限制了代码的使用方式

当包含的文件包含一些本地配置时,这实际上可能是您想要的,但您几乎肯定会遇到以下问题:

  • require\u once()
    只需要一次,这就是函数的用途。这意味着:如果您多次输入函数
    getTierOne()
    ,那么对于后续的每次运行,
    require\u once()
    将不包含任何代码,因为它在第一次运行时就已经包含了。因此,是否包含配置取决于!那是一个可怕的设计

因此,要么全局包含配置,例如将其存储在某个变量中,然后在函数中引用该变量,要么使用
require()
include()
确保配置确实包含在函数的每次执行中

有任何错误消息吗?您可能只是没有执行query.beark,您真的需要它吗:(include_once的副本不是require_onceboth:require_once(“C:\xampp\htdocs\spdealers\Admin Panel\config.php”);require_once(config.php);只需使用
require_once()即可解决有趣而非内部的问题rry如何在globall配置中包含我的文件
在脚本开始时,如果包含静态内容,则在函数范围之外。但是请注意,如果只是包含配置,则其中的任何语法错误都将完全破坏代码。因为动态内容通常更安全地解释此类文件的内容,例如使用函数
parse\u ini\u file()
…我在代码开头使用了require_once()如何使用parse_ini_文件()函数???对不起我的愚蠢问题我是phpWell的新手,你看了php文档了吗?如果没有它,你就无法编写php:那么把这些值存储在函数中的静态变量中怎么样?如果只在需要时调用函数一次读取config.php来节省资源,这难道不是一个有用的设计吗?