在两个函数PHP中使用相同的数组

在两个函数PHP中使用相同的数组,php,arrays,Php,Arrays,我想知道如何在第二个函数CreatejsonFile中收回数组?我尝试使用global和GLOBALS,但都不起作用 class Connection { //my class public static function connect($request) { // function call database $connect = oci_connect($user, $password, $connection_url3,'AL32UTF8'); $stmt = ociparse($

我想知道如何在第二个函数CreatejsonFile中收回数组?我尝试使用global和GLOBALS,但都不起作用

class Connection { //my class

public static function connect($request) { // function call database

$connect = oci_connect($user, $password, $connection_url3,'AL32UTF8'); 
$stmt = ociparse($connect,$request);
ociexecute($stmt,OCI_DEFAULT); 

$txt_job_aval = array();

while (ocifetch($stmt)){ 
array_push($txt_job_aval, ociresult($stmt,1)); 
}

public function CreatejsonFile(){

foreach($txt_job_aval as $valeur) 
    { 
    echo $valeur.'<br>'; 
    } 
}
}
类连接{//我的类
公共静态函数连接($request){//函数调用数据库
$connect=oci_connect($user,$password,$connection_url3,'AL32UTF8');
$stmt=ociparse($connect,$request);
OCI执行($stmt,OCI_默认值);
$txt_job_aval=array();
而(ocifetch($stmt)){
数组推送($txt\U job\U aval,OCIRSULT($stmt,1));
}
公共函数CreatejsonFile(){
foreach($txt\u job\u aval作为$valeur)
{ 
回声$valeur.“
”; } } }
不要将其设为全局属性……将其设为类的属性

class Connection { //my class

    protected $txt_job_aval;

    public function connect($request) { // function call database

        $connect = oci_connect($user, $password, $connection_url3,'AL32UTF8'); 
        $stmt = ociparse($connect,$request);
        ociexecute($stmt,OCI_DEFAULT); 

        $this->txt_job_aval = array();

        while (ocifetch($stmt)){ 
            array_push($this->txt_job_aval, ociresult($stmt,1)); 
        }
    }

    public function CreatejsonFile(){
        foreach($this->txt_job_aval as $valeur) { 
            echo $valeur.'<br>'; 
        } 
    }
}


$this->txt\u job\u aval
不要将其设置为全局性的……将其设置为classIt's not work的属性。我不认为代码中的错误“it not work”不是对问题的有效描述……请解释“it not work”是什么意思。它是否显示任何错误?它是否使您的Web服务器崩溃?它是否显示不正确的数据?它是否使您的房子着火?
在不在对象上下文中时使用$this
然后不要静态地进行连接调用,对实例进行连接调用;或者将这两种方法都设置为静态(和$txt\u job\u aval)然后静态调用所有内容。第一个解决方案工作。错误在调用中。我这样做:连接::连接($request);而不是$con=newconnection();$con->connect($request);
$con = new Connection();
$con->connect($request);
$con->CreatejsonFile();
class Connection { //my class

    protected static $txt_job_aval;

    public function connect($request) { // function call database

        $connect = oci_connect($user, $password, $connection_url3,'AL32UTF8'); 
        $stmt = ociparse($connect,$request);
        ociexecute($stmt,OCI_DEFAULT); 

        self::txt_job_aval = array();

        while (ocifetch($stmt)){ 
            array_push(self::txt_job_aval, ociresult($stmt,1)); 
        }
    }

    public static function CreatejsonFile(){
        foreach(self::txt_job_aval as $valeur) { 
            echo $valeur.'<br>'; 
        } 
    }
}
Connection::connect($request);
Connection::CreatejsonFile();