php最简单最基础入门笔记
偶然翻到之前刚学php时记录的笔记,特此分享给大家,希望对初学者有所帮助。
php网页命名不支持中文
isset($abc) 判断变量是否被定义
empty($abc) 判断变量是否为空
unset ($abc) 取消变量的定义
$a=’b’;
$$a=123;
echo$$a 同 echo $b
常量无$符号, PI 3.1415926
define(‘ABC’,100);
define(‘_A’,‘hello’);
预定义常量
M_PI 3.1415926
变量,小写字母
常量,大写字母
预定义变量 超全局
常量 超全局
自定义变量 全局
屏幕打印
echo $a 内容
var_dump($a) 类型 内容
var_export 返回合法的php代码
$a=’xyz’
$b=’abc’
$c=$a.$b
值是’xyzabc’
.是字符串的连接符
常用运算符优先级表
$a=3;
$a=$a+2; 同 $a+=2;
类似:
$a*=2;
$a%=2;
数组
$a1= array(‘a’,2,TURE); 三个单元序号 0 1 2
打印结果 var_dump TURE打印结果为1
常用 print_r($a1)
指定编号 b,2,1
$a2= array(‘b’=>’a’,2=>2,’1’=>TURE);
$a3= array(‘1.5’=>2,1=>TURE,1.5=>’’a);
print_r($a3);
显示结果:
Array
(
[1.5] => 2
[1]=>a
)
‘1.5‘是字符串
后面编号为1.5自动变成1整型,后面的覆盖前面的。
数组的调用
$a1=(‘abc’,1,TURE);
$a1[1]= 3; 数组中的单个赋值
print_r($a1);
echo$a1[‘1’] + $a1[2]
$a1[‘1’]同 $a1[1]
$key=’b’;
$b[$key]=3; 同 $b[b]=3;
$a=array(‘’a,’’b,’c’);
list($x,$y,$z)=$a;
则分别为$x $y $z赋值为a b c
list赋值必须从编号0开始,
$b=array(2=>3);
list($m)=$b; 则网页提示错误。
字符串
$a=’abc’;
$a=”abc”;
$a=<<<EOT
abc
EOT;//注意末尾的结束符必须靠边,其前面不能有空格DHL开始,必须换行,DHL结束,EOT可随意更换,与变量命名规则相同。
$$b1=’/\’M’; 打印结果是/’M \是转义符
$$b1=’\\’; 打印结果是\
$$b1=”\””; 打印结果是”
单引号需要转义的 单引号 反斜线
双引号需要转义的 双引号 反斜线 换行符\n 美元符号$
段落标界需要转义的 同双引号
变量的解析
$a10= ‘123456;
$a11= “abcde$a10”; 优先解析$a10
echo$a11; 显示abcde123456
$a11= “abcde$a102”; $a102不存在
echo$a11; 显示abcde
可以用{}分界
$a11= “abcde{$a10}2”;
常用的预定义变量
服务器 $_SERVER 和 $_ENV
客户端 $_GET $_POST $_COOKIE $_REQEUST $_FILES
服务器会话数组变量 $_SESSION
超全局定义数组变量 $GLBALS
$_SERVER 数组的常用“键名”
SERVER_ADDR 服务器IP
SERVER_NAME 访问域名
SCRIPT_NAME 访问文件名
QUERY_STRING 访问参数 如:abc.com/?n=6&m=8
REMOTE_ADDR(REMOTE_HOST) 客户端IP
HTTP_USER_AGENT 客户端信息
print_r($_SERVER);
客户端提交数组变量
$_GET
$_POST
$_FILES 通过POST方式已上传文件项目组成的数组变量
放在客户端上$_COOKIE和$SESSION 可视为服务器上的COOKIE
$GLOBALS 打印全部预定义数组(包括GET、POST、FILES)
POST向服务器传数据
FORM表单的提交
html代码
<body>
<form action=’****.php’ method=’post’>
c:<input name=’c’ value=’456’>
d:<input name=’d’ >
c:<input type=’submit’ name=’提交’>
</form>
</body>
php代码
<?php
echo $_SERVER[‘QUERY_STRING’]; 获取get传值
echo “\n”
echofile_get_contents(‘php=//input’); 获取POST传值
?>
$_GET $_POST print_r($_POST);
$x=$_POST[‘d’]+1; 转化为php中的变量
文件的上传
html代码
<form action=’***.php’ enctype="multipart/form-data" method=POST>
<input type=file name=up>
<input type=submit>
</form>
php代码
print_r($_FILES); 找到文件的临时存放位置
指针
NULL 和 unset 区别。
$a=5; $c=5;
$b=&$a; $d=&$c;
$b=NULL; unset($d);
分别打印 $a $b $c $d
显示结果NULL NULL 5 NULL
控制流程
顺序、选择、循环
if else elseif 举例 if($a>$b){echo $a;}else{echo $b;}
switch case default break
三元运算符( ? : ;)
(6>4?true:flase;)
empty($a) //判断变量是不是空值,是否为bool型,如果是空型,返回TURE。如果$a没有定义,flase
NULL;FLASLE、0、‘’、‘0’、array()空数组
PHP注释
单行 //
/* 多行 */
php最简单最基础入门笔记的更多相关文章
- Linux基础入门笔记
今天带来Linux入门的一些基础的笔记,科班出身的同学们,Linux已经成为了必修课了,下面我带来关于Linux的相关入门知识以及Linux简单的介绍! Linux内核最初只是由芬兰人林纳斯·托瓦兹( ...
- Shell编程菜鸟基础入门笔记
Shell编程基础入门 1.shell格式:例 shell脚本开发习惯 1.指定解释器 #!/bin/bash 2.脚本开头加版权等信息如:#DATE:时间,#author(作者)#mail: ...
- MATLAB基础入门笔记
为了参加那个电工杯,豁出去啦,时间真的很短,但是得挑战呀..对于MATLAB编程,有一些了解,MATLAB(矩阵实验室的简称)是一种专业的计算机程序,用于工程科学的矩阵数学运算,说说它的开发环境. 任 ...
- Vue基础入门笔记
不是面向DOM进行编程,而是面向数据去编程.当数据发生改变,页面就会随着改变. 属性绑定(v-bind)和双向数据绑定(v-model) 模板指令(v-bind:)后面跟的内容不再是字符串而是: js ...
- MySQL 基础入门笔记
目前我们已知的保存数据的容器有: 内存:( 数组,集合) 硬盘:(文件) 将数据从硬盘读取到内存始终是一个性能上的瓶颈 DB : 数据库 ( 保存一系列有组织的数据容器) DBMS: 数 ...
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- Linux及Arm-Linux程序开发笔记(零基础入门篇)
Linux及Arm-Linux程序开发笔记(零基础入门篇) 作者:一点一滴的Beer http://beer.cnblogs.com/ 本文地址:http://www.cnblogs.com/bee ...
- 1 TensorFlow入门笔记之基础架构
------------------------------------ 写在开头:此文参照莫烦python教程(墙裂推荐!!!) ---------------------------------- ...
- jQuery:自学笔记(1)——基础入门
jQuery:自学笔记(1)——基础入门 认识JQuery 1.jQuery概述 jQuery是一个快速.小巧 .功能丰富的JavaScript函数库.它可以实现“写的少,做的多”的目标. jQuer ...
随机推荐
- HDU 6096 String (AC自动机)
题目链接 Problem Description Bob has a dictionary with N words in it. Now there is a list of words in wh ...
- POJ3233_Matrix Power Series_矩阵幂_C++
题目:http://poj.org/problem?id=3233 这是今天考试的题目,结果没想出来写了个暴力30分,看完题解之后觉得自己是SB 首先暴力就是一个个乘然后相加,时间是O(kn3),极限 ...
- Celery异步任务队列/周期任务+ RabbitMQ + Django
一.Celery介绍和基本使用 Celery 是一个 基于python开发的分布式异步消息任务队列,通过它可以轻松的实现任务的异步处理, 如果你的业务场景中需要用到异步任务,就可以考虑使用celer ...
- Oracle DataTable的数据批量写入数据库
insert语句,sqldataadapter.update(dataset,tablename);sqlbulkcopy.WriteToServer(datatable);三个方法的性能进行比较: ...
- 洛谷 P4592: bzoj 5338: [TJOI2018]异或
题目传送门:洛谷P4592. 题意简述: 题面说的很清楚了. 题解: 发现没有修改很快乐.再看异或最大值操作,很容易想到可持久化 01trie. 这里要把 01trie 搬到树上,有点难受. 树剖太捞 ...
- 冲量:momentum
参见:http://www.jianshu.com/p/58b3fe300ecb,这个博客里有冲量的python实现的代码和讲解 “冲量”这个概念源自于物理中的力学,表示力对时间的积累效应. 在普通的 ...
- 转载-SVN常用命令
SVN(Subversion)是一个自由.开源的项目源代码版本控制工具.目前,绝大多数开源软件和企业代码管理,都使用SVN作为代码版本管理软件. Subversion将文件存放在中心版本库里,这个版本 ...
- 去除TFS版本控制
对于曾经做过TFS版本控制的项目,在版本控制服务不可用的时候,依然会在每次打开项目的时候都提示:当前项目是版本控制的项目,但是当前版本控制不可用,balabala的信息,如果是需要进行版本控制的项目在 ...
- Hadoop(二):MapReduce程序(Java)
Java版本程序开发过程主要包含三个步骤,一是map.reduce程序开发:第二是将程序编译成JAR包:第三使用Hadoop jar命令进行任务提交. 下面拿一个具体的例子进行说明,一个简单的词频统计 ...
- Java容器---迭代器
任何容器类,都必须有某种方式可以插入元素并将它们再次取回.毕竟,持有事物是容器最基本的工作. 对于List, add0是插入元素的方法之一,而get()是取出元素的方法之一. 如果从更高层的角度思考, ...