php函数的参数赋值方式
1、传值赋值,例如$a=1,$b=$a等;
2、引用赋值,例如$a=&$b,即$a和$b在都指向了内存中的同一个存储变量值得地址;
3、引用计数传值,在php和js中的对象都是默认的传值方式都是引用计数传值,例子如下:
<?php
class Dog{
public $name="小花";
public $leg=4;
}
$a=new Dog;//此时,$a指向了内存中的一个地址(假设0XFFAD[1]),该地址又指向最终对象的值
$b=$a;//此时,$b和$a都指向了内存中的另一个地址(0XFFAD[2]),该地址又指向最终对象的值
var_dump($b->leg);//结果是int 4
$b=999;
var_dump($b);//结果是int 999;
var_dump($a);//此时的结果不是int 999,而是object(Dog)[1]
public 'name' => string '灏忚姳' (length=6) public 'leg' => int 4
由此可以看出对象的传值方式跟第二种引用传值是有点区别的。
在PHP中,函数的参数可以通过值传递或引用传递来进行赋值。值传递是指将参数的值复制一份传递给函数,在函数中对参数进行修改不会影响原始变量的值。
而引用传递是指将参数的内存地址传递给函数,函数中对参数进行修改会直接影响原始变量的值。在函数定义中,可以使用&符号来表示参数是引用传递。例如:function foo(&$bar) {} 表示$bar是引用传递的参数。在调用函数时,可以使用变量名或字面量来传递参数。例如:foo($x) 或 foo(5)。
如何运行PHP程序
1.命令行方式运行PHP
在命令行运行PHP是最简单的方式之一。它适用于那些不需要与Web服务器、浏览器或其他Web应用程序进行交互的应用程序。只需打开终端,输入"php"命令即可。命令行方式运行PHP非常方便,但它不能与Web服务器交互,因此它不适用于需要动态生成Web页面的应用程序。
2.模块方式运行PHP
Apache服务器是目前最流行的Web服务器之一,如果您想要将PHP与Apache搭配使用,您需要安装PHP模块。安装成功后,PHP脚本可以与Web浏览器一起使用。Apache服务器会自动将请求发送给PHP模块进行处理。模块方式运行PHP的优点是,它非常快速且易于部署;缺点是,它无法对于每一个PHP文件进行独立的设置,因此可能不够灵活。
3.CGI方式运行PHP
在CGI模式下,PHP脚本由Web服务器调用并执行。当浏览器发送PHP请求时,Web服务器会调用PHP解释器解析PHP文件,并在处理请求后将其发送回浏览器。CGI方式运行PHP的优点是可靠性高及可维护性强,因为每个PHP文件都可以单独配置;缺点是CGI比其他方法更慢,因为每个请求都需要启动和关闭PHP进程。同时,在处理大量请求时,CGI也可能会占用太多的服务器资源。
4.FastCGI方式运行PHP
FastCGI与CGI非常相似,但它可以重用解释器进程,从而更快地处理请求。FastCGI是一种可扩展性较高的CGI方式,支持多个进程同时运行。在FastCGI下,解释器进程(PHP-FPM)作为单独的服务运行,Web服务器与之通信并将其处理结果返回给浏览器。FastCGI模式下运行PHP的优点是速度较快,同时可以通过更改进程配置文件调整进程数量,来适应并发请求处理的需求。但是需要注意,如果配置不当,它可能会占用更多的系统资源。