首页 > 后端开发 > 正文

PHP 如何让函数调用函数外的变量

2024-08-07 22:21:08 | 我爱编程网

PHP 如何让函数调用函数外的变量相关内容,小编在这里做了整理,希望能对大家有所帮助,关于PHP 如何让函数调用函数外的变量信息,一起来了解一下吧!

本文目录一览:

PHP 如何让函数调用函数外的变量

PHP 如何让函数调用函数外的变量

可以用 global 声明变量为全局变量如 global $a;
另外一种使用函数外声明变量的方法,需要使用$GLOBALS数组
$a='a';
function f()
{
echo($GLOBALS['a']);
}

PHP 如何让函数调用函数外的变量我爱编程网

php 调用 其他文件变量

★ PHP变量是有作用域(指定的有效范围)的:

  1. 函数内声明的变量只对该函数有效,出了函数的范围就会无效;

  2. 同理在函数以外声明的变量在函数中访问也是无效的;

  3. 函数内的变量跨函数访问也是无效的。

★ 问题推测:

听你上面说的情况,你的$username变量应该声明在函数或者类里边,然后从函数外访问;或者声明在函数外,但从函数中进行访问了。

★ 解决方法:

函数中的变量要想让其全局有效必须得在变量前面加global关键字声明成全局变量才可以在函数以外访问到;同理在函数外声明的函数如果想要在函数中来访问,也要使用global关键字来声明为全局变量。

★关于php变量作用域的示范:

举例有php文件b.php如下:

<?php

    function func1(){
        global $a2;
        $a1 = 'var a1 In file b function func1';
        $a2 = 'var a2 In file b function func1';
    }

?>

然后有php文件a.php如下:

<?php

    error_reporting(0);    //关闭错误报告
    include('b.php');    //引用b.php
    $a3 = 'var a3 In file a out of function';
    $a4 = 'var a4 In file a out of function';
     
    function func2(){
        global $a5;
        $a5 = 'var a5 In file a function func2';
        $a6 = 'var a6 In file a function func2';
    }       
     
    function func3(){
        echo 'print var $a1 to $a6 in function func3:<br>';
        var_dump($a1);
        var_dump($a2);
        var_dump($a3);
        var_dump($a4);
        var_dump($a5);
        var_dump($a6);
    }
     
    function func4(){
        echo 'print var $a1 to $a6 in function func4:<br>';
        global $a1;
        global $a2;
        global $a3;
        global $a4;
        global $a5;
        global $a6;
        var_dump($a1);
        var_dump($a2);
        var_dump($a3);
        var_dump($a4);
        var_dump($a5);
        var_dump($a6);
    }
    
    echo 'print var $a1 $a2 $a5 $a6 in file a:<br/>';
    var_dump($a1);
    var_dump($a2);
    var_dump($a5);
    var_dump($a6);
    func3();
    func4();
     
    func1();
    func2();
     
    echo 'print var $a1 $a2 $a5 $a6 in file a(after call func1 and func2):<br/>';
    var_dump($a1);
    var_dump($a2);
    var_dump($a5);
    var_dump($a6);
    func3();
    func4();
 
?>

执行a.php后就会输出:

print var $a1 $a2 $a5 $a6 in file a:    <!--$a1 $a2 $a5 $a6都被声明在函数中,此时因为函数未被调用,所以都无法正确取值-->
null

null

null

null

print var $a1 to $a6 in function func3:    <!--$a1 $a2 $a5 $a6同上,$a3和$a4因为在函数外声明所以全部无法正确取值-->
null

null

null

null

null

null

print var $a1 to $a6 in function func4:    <!--$a1 $a2 $a3 $a4同上,$a3和$a4用global声明为全局了,所以可以正确取值-->
null

null

string 'var a3 In file a out of function' (length=32)

string 'var a4 In file a out of function' (length=32)

null

null

print var $a1 $a2 $a5 $a6 in file a(after call func1 and func2):    <!--在执行func1和func2之后被关键字声明为全局变量的$a2和$a5可以被正确取值-->
null

string 'var a2 In file b function func1' (length=31)

string 'var a5 In file a function func2' (length=31)

null

print var $a1 to $a6 in function func3:    <!--因为所有变量不是声明在函数func3外就是被声明在其他函数中,所以都无法正确取值-->
null

null

null

null

null

null

print var $a1 to $a6 in function func4:    <!--除了在其它函数内未被声明为全局的$a1和$a6,其他变量均被正确取值-->
null

string 'var a2 In file b function func1' (length=31)

string 'var a3 In file a out of function' (length=32)

string 'var a4 In file a out of function' (length=32)

string 'var a5 In file a function func2' (length=31)

null

上面的代码可以让你很好的理解变量作用域的规则。

★ 资料参考

更多的变量作用域资料请参考

PHP 如何让函数调用函数外的变量

PHP有哪几种外部变量?如何使用这几种变量?

我爱编程网(https://www.52biancheng.com)小编还为大家带来PHP有哪几种外部变量?如何使用这几种变量?的相关内容。

在PHP中,有三种外部变量:

  • $_GET:用于获取通过URL传递的参数,可以使用$_GET[‘参数名’]来获取对应的值。

  • $_POST:用于获取通过表单提交的数据,可以使用$_POST[‘字段名’]来获取对应的值。

  • $_REQUEST:用于同时获取$_GET和$_POST中的数据,可以使用$_REQUEST[‘参数名或字段名’]来获取对应的值。

  • 以下是一个简单的示例代码,演示如何使用这些外部变量:

在上面的代码中,我们首先创建了一个表单,并将其提交到当前页面。当用户点击“提交”按钮时,会执行PHP代码块。在这个代码块中,我们使用$_POST变量来获取表单提交的数据,并输出它们。

以上就是PHP 如何让函数调用函数外的变量全部内容了,了解更多相关信息,关注我爱编程网。更多相关文章关注我爱编程网:www.52biancheng.com

免责声明:文章内容来自网络,如有侵权请及时联系删除。
与“PHP 如何让函数调用函数外的变量”相关推荐
js如何调用php变量
js如何调用php变量

js如何调用php变量其实不是javascript得到php变量,而是php把变量值传给javascript,其实也不叫传给javascript。说不清楚了,看下面实例。untitled1.php:&lt;scriptlanguage="php"&gt;$ip=$_SERVER['HTTP_REMOTE_ADDR'];&lt;/script&gt;&lt;script

2024-10-11 11:15:44
PHP有哪几种外部变量?如何使用这几种变量?
PHP有哪几种外部变量?如何使用这几种变量?

php调用其他文件变量★PHP变量是有作用域(指定的有效范围)的:函数内声明的变量只对该函数有效,出了函数的范围就会无效;同理在函数以外声明的变量在函数中访问也是无效的;函数内的变量跨函数访问也是无效的。★问题推测:听你上面说的情况,你的$username变量应该声明在函数或者类里边,然后从函数外访问;或者声明在函数外,但从函数中进行访问了。

2024-08-04 15:27:28
php闭包函数怎么使用外部变量
php闭包函数怎么使用外部变量

php闭包函数怎么使用外部变量使用use关键词引入变量即可,请看代码:&lt;?phpfunction callFunc($callback) {    return call_user_func($callback);}$author = 'Zjmainstay';echo callFunc(function() use($author) {    #这里    return "Th

2024-08-27 06:45:53
怎么调用function函数中的变量
怎么调用function函数中的变量

为数组的每个元素应用回调函数?数组的4种声明方式:1.先声明再初始化例如://1.声明int[]nums;//初始化nums=newint[5];2.声明并初始化例如://2.声明、初始化int[]nums=newint[10];3.创建数组同时赋值例如://3.创建数组同时赋值String[]names=newString[]{"大

2024-12-07 07:22:36
PHP function 里 怎么调用外部定义过的变量
PHP function 里 怎么调用外部定义过的变量

PHPfunction里怎么调用外部定义过的变量很不习惯PHP中的变量作用域,PHP中函数变量和全局是完全隔绝的,也就是无法相互访问。比如下面这样:复制代码代码如下:$test=123;abc();//这里什么都不输出,因为访问不到$test变量functionabc(){echo($test);}$test=123;abc();//这里什么都不输出,因为

2024-10-11 14:49:40
PHP如何获取自定义函数的变量名的变量名称
PHP如何获取自定义函数的变量名的变量名称

在PHP中,怎样获取连接中的函数值?使用$_GET来获取值是最好的选择,同楼上两位所说的一致的。在02.php这个文件中加入以下内容:$id=$_GET['id']。这样你传过去的值就可以使用了,或者直接使用$_GET['id']也可以,但这样不安全。在一个网站,使用URL传过去的值一定要处理后再使用。这样是为了安全考虑,特别是传的值还会用在一些涉及数据库或是其它可执行语句的

2024-08-18 23:52:03
php类里面一个函数如何使用另一个函数的变量
php类里面一个函数如何使用另一个函数的变量

php类里面一个函数如何使用另一个函数的变量$this-&gt;a();一样的,只是在前面加上个$this-&gt;不过上面好像有点答非所问...你需要在functiona里面对$a的值进行输出..也就是functiona(){$a='a';return$a;}然后需要在函数b里面进行导入functionb(){$a=$this-&gt;a();

2024-07-24 23:35:21
php内部函数外部函数 PHP直接调用函数和调用另外一个文件中的函数的区别
php内部函数外部函数 PHP直接调用函数和调用另外一个文件中的函数的区别

PHP直接调用函数和调用另外一个文件中的函数的区别//如果是PHP文件中的函数,唯一的区别是:先引入外部文件,然后直接调用。//如果是外部类文件中的函数,需要引入,然后new 对象后,再调用该对象的函数。$msg=test_msg();function test_msg(){echo "";}//调用外部文件中的函数//首先引入文件include_once 'file.php';$msg=t

2024-10-10 00:09:06