php自学笔记2
php运行原理:
如果请求服务器上的资源是html网页,服务器直接将网页响应给客户端浏览器;
如果请求服务器上的资源是php,服务器先解释执行php,解释为标准的html代码响应给客户端浏览器。
php输出有两种方式:
echo 能够输出多个字符串,(多个字符串之间用逗号隔开)速度快
print 只能输出一个字符串,有返回值,速度慢
echo print ""; //1 ------------------------------------------
php基本语法
变量
数据类型及转换
常量
-----------------------------------------
**php基本语法
1.语句是以;结尾
2.php程序写在<?php 代码 ?>,可嵌入到html中任何位置
3. 有时php程序这样写,但不推荐
<script language="php">
echo "这是另一种php程序写法"
</script>
4. php区分大小写,但关键词除外
以下都正确,建议关键词用小写
<?php
echo "这是1111";
ECHO "这是2222";
eCHo "3333";
?>
5.php注释
//单行注释1
#单行注释2
/*
多行注释
*/
注意:php注释过的代码,服务器不进行解释
【注】Parse error: syntax error 解析错误:语句错误 ***变量
广义:一个程序即一个世界,程序的作用是操作数据,变量即程序的基本组成单位,变量用于存储数据的。
php中变量以$开头,定义时必须赋值,若不赋值直接使用,会Notice: Undefined variable,不是错误,后续代码可继续执行
$x=10;
变量的数据类型可变化,php根据值的类型进行自动转换
变量名 必须以字母或下划线开头,可由字母数字下划线组成,汉字也可以,但是不推荐
不能含有特殊符号,不能是关键字
$人="中国人";
echo $人;
***基本数据类型
1.整型 :php中整型都是有符号的 ,一般占4个字节(1个字节byte=8位bit ) 2的8次方
数据范围:-2的31次 到 2的31次方-1
echo PHP_INT_SIZE; //4 输出整数字节数
echo PHP_INT_MAX;//2147483647 输出整数的最大值 $x=032;//八进制 以0开头 2*1+3*8=26
echo $x;
$y=0x32;//十六进制 以0x开头 2*1+3*16=50
echo $y;
$y2=0x3c;//十六进制 以0x开头 12*1+3*16=60
echo $y2; 2.浮点型:双精度或者实数
字节数与平台有关,通常最大值是1.8E308,有14位数字的精度
$a=567.1234345465465;
echo $a;// 567.12343454655
$b=123.124356465676768782343;
echo $b;//123.12435646568
$c=0.00000002343455465675678888;
echo $c;//2.3434554656757E-8
3.布尔类型
$x=true;
echo $x; //1
$x=false;
echo $x; //空
4.字符串类型,字符串连接用点号
$m=10;
$a="中文$m"; // 中文10
$b='中文$m'; //中文$m
echo $a,$b;
此处:'中文'.$m 等价于 "中文$m"
==复合类型
数组 对象
==特殊类型
null resource(资源)
$m=null;
echo $m; //空
$con=mysql_connect("localhost","root","root");//资源类型
echo var_dump($con);//resource(2) of type (mysql link)
[注意] var_dump() 查看数据类型
***数据类型转换
1.强制类型转换(int) (float) (bool) (array) (object)
$x=null;
$x=0;
echo var_dump( $x),var_dump((int)$x),var_dump((string)$x),var_dump((bool)$x);
2.用指定方法转换
将字符串
转为整型 intval();
转换成浮点型floatval();
将数字转换成字符串 strval();
3.通用方法settype(value,type); type可 为 int float bool string array object
$x=12.8;
settype($x,"int");
echo $x,var_dump($x); ***常量
常量可以理解为特殊的变量,值是固定的,不可以进行修改
1.一旦被定义不可重新赋值
2.自定义常量用define(常量名,常量值)或const ,推荐用define;
3.常量前不能加$
define("POEM","李白");
echo POEM;
const RATE=0.1;
echo RATE; //0.1
4.常量名通常用大写,以字母或下划线开头,可含有数字字母下划线
**
php自学笔记2的更多相关文章
- 《Linux内核设计与实现》课本第四章自学笔记——20135203齐岳
<Linux内核设计与实现>课本第四章自学笔记 进程调度 By20135203齐岳 4.1 多任务 多任务操作系统就是能同时并发的交互执行多个进程的操作系统.多任务操作系统使多个进程处于堵 ...
- 《Linux内核设计与实现》课本第三章自学笔记——20135203齐岳
<Linux内核设计与实现>课本第三章自学笔记 进程管理 By20135203齐岳 进程 进程:处于执行期的程序.包括代码段和打开的文件.挂起的信号.内核内部数据.处理器状态一个或多个具有 ...
- 《Linux内核设计与实现》课本第十八章自学笔记——20135203齐岳
<Linux内核设计与实现>课本第十八章自学笔记 By20135203齐岳 通过打印来调试 printk()是内核提供的格式化打印函数,除了和C库提供的printf()函数功能相同外还有一 ...
- python自学笔记
python自学笔记 python自学笔记 1.输出 2.输入 3.零碎 4.数据结构 4.1 list 类比于java中的数组 4.2 tuple 元祖 5.条件判断和循环 5.1 条件判断 5.2 ...
- ssh自学笔记
Ssh自学笔记 Ssh简介 传统的网络服务程序,如:ftp.pop和telnet在本质上都是不安全的,因为它们在网络上用明文传送口令和数据,别有用心的人非常容易就可以截获这些口令和数据.而且,这些服务 ...
- JavaScript高级程序设计之自学笔记(一)————Array类型
以下为自学笔记. 一.Array类型 创建数组的基本方式有两种: 1.1第一种是使用Array构造函数(可省略new操作符). 1.2第二种是使用数组字面量表示法. 二.数组的访问 2.1访问方法 在 ...
- vue 自学笔记记录
vue 自学笔记(一): 知识内容: 安装vue ,创建vue实例,安装第一个组件,单项数据流 https://www.cnblogs.com/baili-luoyun/p/10763163.htm ...
- JS自学笔记05
JS自学笔记05 1.例题 产生随机的16进制颜色 function getColor(){ var str="#"; var arr=["0","1 ...
- JS自学笔记04
JS自学笔记04 arguments[索引] 实参的值 1.对象 1)创建对象 ①调用系统的构造函数创建对象 var obj=new Object(); //添加属性.对象.名字=值; obj.nam ...
- JS自学笔记03
JS自学笔记03 1.函数练习: 如果函数所需参数为数组,在声明和定义时按照普通变量名书写参数列表,在编写函数体内容时体现其为一个数组即可,再传参时可以直接将具体的数组传进去 即 var max=ge ...
随机推荐
- iOS 通用缓存:HanekeSwift
iOS 通用缓存:HanekeSwift Haneke 是个采用 Swift 编写的轻量级 iOS 通用缓存.示例: 初始化一个数据缓存: let cache = Cache<NSData> ...
- 规避Javascript多人开发函数和变量重名问题
函数和变量重名始终是一个令人头痛的问题,先讲变量吧,相信了解JS的朋友都知道,在JS中 是没有块级作用域的只有函数作用域,也就是说那些以大括号为界定符的代码块是管不住其中定义 的变量的作用域的,举例: ...
- [洛谷]P3704-数字表格
[洛谷]P3704-数字表格 妙啊,这又是一道反演题,而且个人感觉比较高级 传送门 大意 在\(N\times M\)的数表\(a\)中,\(a_{i,j}\)表示f((i,j)),其中\((i,j) ...
- HDFS的存储策略
本文介绍hdfs的存储策略 内容译自:http://hadoop.apache.org/docs/r2.8.0/hadoop-project-dist/hadoop-hdfs/ArchivalStor ...
- MyEclipse格式化JSP代码导致Java表达式<%= %>自动换行的解决办法
MyEclipse格式化JSP代码导致Java表达式<%= %>自动换行的解决办法: 可以将Java表达式<%= %>换成EL表达式.
- Xcode升到7.1插件失效解决方法
Mac前段时间下载了新的OS系统与Xcode 7.1,然而在使用Xcode 7.1时,发现插件不能用了,瞬间木有爱了,正好交流群里有人问到了插件失效的问题,经过各路大神的神通最终用下面这种方法完美解决 ...
- mysql中tinyint、smallint、mediumint,int 和bigint 的区别
1:字节的定义:字节(Byte):字节是通过网络传输信息(或在硬盘或内存中存储信息)的单位. 一个英文字母(不分大小写)占一个字节的空间,一个中文汉字占两个字节的空间 2.在mysql中一个汉字占三个 ...
- Linux 系统无法登录?你的程序有问题吧!
今天遇到一个问题,有个用户连接不上服务器(无法ssh远程连接) su: failed to execute /bin/bash: Resource temporarily unavailable 谷歌 ...
- pygame小游戏之坦克大战
以前在学校的时候无聊的学了会pygame.看了大概一周的教学视频,做出来个坦克大战的小游戏 Python3.5 pycharm import pygame,sys,time from random ...
- 【JDBC】一、JDBC连接数据库
package com.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLExce ...