php基础_变量

 

 

1 php是一种脚本 语言,可以像js一样,嵌入到html中。

(1)在html中,是通过php标记识别php代码的

<?php 

         echo "hello world";

?>

(2)单独存在的php文件,不常用结束标记符

由于php很多代码的书写并不是嵌入到html中,是单独存在的,所以不需要结束标记符,php会自动从开始到结束全部认为是php代码。从而解析。

 

2 php定义变量

不需要使用任何关键字定义变量

(1)定义并赋值变量$num

$num = 1;

echo "$num";  //2

(2)修改变量

$num = 2;

(3)删除变量(从内存中释放)

unset($num);

(4) 变量命名规则

----可行命名

$num; $num1;$num_1; $_num;

!!以数字开头是不可行的

$1_num;

 (5)php预定义变量,都是数组

  • $GLOBALS
  • $_SERVER 服务器信息
  • $_REQUEST GET和POST提交的都会保存
  • $_POST POST方式提交的数据
  • $_GET GET方式提交的数据
  • $_FILES 用户上传的文件信息
  • $_ENV 环境信息
  • $_COOKIE cookie会话信息
  • $_SESSION session会话信息

$_GET 

自动存储”(保存/装载)提交到某个文件中的GET数据。

$name = $_GET['name']

$age = $_GET['age']

$_POST

$_POST变量里面会“自动存储”(保存/装载)提交到某个文件中的POST数据。

$name = $_POST['name']
$age = $_POST['age']

$_SERVER

服务器信息

array(41) {
  ["PATH"]=>
  string(655) "D:\ruanjian\Xshell6\;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;D:\python27\Scripts\;D:\python27\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;D:\python37\;D:\python37\Scripts\;C:\Program Files\TortoiseGit\bin;D:\ruanjian\Git\cmd;D:\phpstudy\PHPTutorial\MySQL\bin;D:\ruanjian\node\;C:\composer;D:\phpstudy\PHPTutorial\php\php-7.2.1-nts;D:\redis\;C:\Users\86187\AppData\Local\Microsoft\WindowsApps;D:\PyCharm Community Edition 2018.3.4\bin;D:\ruanjian\PyCharm 2019.1.1\bin;C:\Users\86187\AppData\Roaming\npm;C:\Users\86187\AppData\Roaming\Composer\vendor\bin"
  ["SYSTEMROOT"]=>
  string(10) "C:\Windows"
  ["COMSPEC"]=>
  string(27) "C:\Windows\system32\cmd.exe"
  ["PATHEXT"]=>
  string(62) ".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY;.PYW"
  ["WINDIR"]=>
  string(10) "C:\Windows"
  ["PHP_FCGI_MAX_REQUESTS"]=>
  string(4) "1000"
  ["PHPRC"]=>
  string(42) "D:/phpstudy/PHPTutorial/php/php-7.2.1-nts/"
  ["_FCGI_SHUTDOWN_EVENT_"]=>
  string(4) "2244"
  ["SCRIPT_NAME"]=>
  string(40) "/practice/basics/predefined_variable.php"
  ["REQUEST_URI"]=>
  string(40) "/practice/basics/predefined_variable.php"
  ["QUERY_STRING"]=>
  string(0) ""
  ["REQUEST_METHOD"]=>
  string(3) "GET"
  ["SERVER_PROTOCOL"]=>
  string(8) "HTTP/1.1"
  ["GATEWAY_INTERFACE"]=>
  string(7) "CGI/1.1"
  ["REMOTE_PORT"]=>
  string(5) "58627"
  ["SCRIPT_FILENAME"]=>
  string(46) "D:/php/practice/basics/predefined_variable.php"
  ["SERVER_ADMIN"]=>
  string(12) "admin@php.cn"
  ["CONTEXT_DOCUMENT_ROOT"]=>
  string(6) "D:/php"
  ["CONTEXT_PREFIX"]=>
  string(0) ""
  ["REQUEST_SCHEME"]=>
  string(4) "http"
  ["DOCUMENT_ROOT"]=>
  string(6) "D:/php"
  ["REMOTE_ADDR"]=>
  string(9) "127.0.0.1"
  ["SERVER_PORT"]=>
  string(2) "80"
  ["SERVER_ADDR"]=>
  string(9) "127.0.0.1"
  ["SERVER_NAME"]=>
  string(12) "www.2019.com"
  ["SERVER_SOFTWARE"]=>
  string(52) "Apache/2.4.23 (Win32) OpenSSL/1.0.2j mod_fcgid/2.3.9"
  ["SERVER_SIGNATURE"]=>
  string(0) ""
  ["SystemRoot"]=>
  string(10) "C:\Windows"
  ["HTTP_COOKIE"]=>
  string(115) "BJYSESSION=efudbrjcloadr1vgeq61uavo3r; read=think%3A%7B%2218%22%3A%221561550462%22%2C%2217%22%3A%221561551333%22%7D"
  ["HTTP_ACCEPT_LANGUAGE"]=>
  string(33) "zh-CN,zh;q=0.9,und;q=0.8,en;q=0.7"
  ["HTTP_ACCEPT_ENCODING"]=>
  string(13) "gzip, deflate"
  ["HTTP_ACCEPT"]=>
  string(118) "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3"
  ["HTTP_USER_AGENT"]=>
  string(110) "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36"
  ["HTTP_UPGRADE_INSECURE_REQUESTS"]=>
  string(1) "1"
  ["HTTP_CACHE_CONTROL"]=>
  string(9) "max-age=0"
  ["HTTP_CONNECTION"]=>
  string(5) "close"
  ["HTTP_HOST"]=>
  string(12) "www.2019.com"
  ["FCGI_ROLE"]=>
  string(9) "RESPONDER"
  ["PHP_SELF"]=>
  string(40) "/practice/basics/predefined_variable.php"
  ["REQUEST_TIME_FLOAT"]=>
  float(1561619312.9901)
  ["REQUEST_TIME"]=>
  int(1561619312)
}

(6)可变变量

//如果我想访问$b的值,但我不直接访问,通过别的变量去访问
$b = "123";

$a = 'b';

//先访问$a的值,拿到b,再在b的前面加上$符号,访问的就是$b

echo $$a; //123

(7)变量传值

值传递:将变量保存的值复制一份,然后将新的值复制给另一个变量。

我有一个苹果,我再复制一个苹果,把新的苹果给你,你咬到的是新苹果,跟我这个苹果没关系

引用传递:将变量保存的值所在的内存地址,传递给另外一个变量,两个变量指向同一块内存空间。

我有一个苹果,我直接把这个苹果给你。你咬了,就跟我咬的是同一个苹果。

(1)值传递,拿到变量存储的值,复制,放到新的内存空间,修改a变量,不会影响到b变量

$a = 1;
$b = $a; //现在$b = 1;

$b = 2; //修改$b,现在$b的值是2
echo $a,$b;  //1,2

d2915f9bf7ca4ab29826bb604876c5ba.png

 (2)引用传递,拿到变量存储值的内存地址,存储,两个变量都指向同一个内存空间,修改a变量,会影响到b变量

$a = 1;
$b = &$a; //现在b存的是a的内存地址里的值, b是1

$b = 2; //修改b变量,会影响到a变量
echo $a, $b;//a和b 都是2

dc63874315b048f29f4578b0a2c19d9e.png

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值