第二章 PHP入门基础之php代码写法


Posted in PHP onDecember 30, 2011

一.在web页面嵌入PHP代码的几种风格
推荐使用标准风格或简短风格

<?php 
//标准风格 
echo 'Hello World!'; 
?> 
<? 
//简短风格 
echo 'Hello World!'; 
?> 
<script language="php"> 
//script风格 
echo 'Hello World!'; 
</script>

二.代码注释的四种方式
<?php 
//单行注释 
/* 
* 多行注释 
*/ 
#shell风格注释 
/** 
* PHPdoc风格注释 
*/ 
?>

三.向浏览器输出字符串的几种方法
<?php 
/* 
* echo函数的功能:向浏览器输出字符串 
* 函数返回值:void 
*/ 
echo 'echo function!'; 
echo('<br/>'); 
/* 
* echo函数的功能:向浏览器输出字符串 
* 函数返回值:int 
*/ 
print 'print function'; 
echo('<br/>'); 
echo print 'echo value of print function. '; 
echo('<br/>'); 
/* 
* printf函数的功能:向浏览器输出字符串 
* 函数返回值:所打印字符串的长度 
*/ 
printf("a weekend have %d days",7); 
echo('<br/>'); 
echo printf("a weekend have %d days",7); 
echo('<br/>'); 
/* 
* sprintf函数的功能:把字符串保存到内存中 
* 函数返回值:保存的字符串本身 
*/ 
sprintf('sprintf function'); 
echo('<br/>'); 
echo sprintf('sprintf function'); 
echo('<br/>'); 
?>

输出结果:
echo function test!
print function test.
print function test. 1
a weekend have 7 days
a weekend have 7 days. 23
sprintf function test
常用类型指示符
类型 描述
%b 整数,显示为二进制
%c 整数,显示为ASCII字符
%d 整数,显示为有符号十进制数
%f 浮点数,显示为浮点数
%o 整数,显示为八进制数
%s 字符串,显示为字符串
%u 整数,显示为无符号十进制数
%x 整数,显示为小写的十六进制数
%X 整数,显示为大写的十六进制数
四.标识符与变量
1.标识符的基本规则:
1) 标识符可以是任意长度,而且可以由任何字母、数字、下划线组成。
2) 标识符不能以数字开始。
3) 在PHP中,标识符是区分大小写的。
4) 一个变量名称可以与一个函数名称相同。
2.变量赋值:
<?php 
$sum = 0; 
$total = 1.22; 
$sum = $total; 
echo $sum; //1.22 
?>

3.变量的数据类型:
基本数据类型
类型 名称
Integer 整数
Float 单精度浮点数
Double 又精度浮点数
String 字符串
Boolean 布尔
Array 数组
Object 对象
4.类型强度
PHP是动态语言,是一种非常弱的类型语言,在程序运行时,可以动态的改变变量的类型。
5.类型转换:
隐式类型转换:
<?php 
$sum = 0; 
$total = 1.22; 
$sum = $total; 
echo gettype ( $sum );//double 
?>

显式类型转换:
<?php 
$sum = 100; 
$total = ( string ) $sum; 
echo gettype ( $sum );//string 
?>

使用settype()函数进行类型转换,返回值1表示成功,空表示失败。
<?php 
$sum = 58; 
echo settype ( $sum, "float" ); 
echo $sum; //58 
echo gettype ( $sum ); //double 
?>

6.检测变量的函数:
函数 功能 返回值
Gettype() 获取变量的类型 基本数据类型中的其中一种
Settype()  设置变量的类型 Bool(1:true 0:false(or ''))
Isset() 用来判断一个变量是否存在 Bool
Unset() 释放给定的变量 Void
Empty() 检测一个变量的值是否为空 Bool
is_int() is_integer() 检测变量是否是整数 Bool
Is_string() 检测变量是否是字符串 bool
Is_numeric 检测变量是否为数字或数字字符串 bool
Is_null 检测变量是否为 NULL bool
Intval() 获取变量的整数值 int
Isset()的基本使用
<?php 
$a = 10; 
echo isset ( $a );//1 
?> 
<?php 
echo isset ( $b );//'' 
?>

Usset()的基本使用
<?php 
$a = 10; 
unset($a); 
echo isset ( $a );//'' 
?>

Empty()的基本使用
<?php 
$a= 5; 
$b =1; 
$c = 0; 
$d = ""; 
$e = array(); 
$f = null; 
$g = "0"; 
$h = false; 
echo empty($a);//''(false) 
echo '<br/>'; 
echo empty($b);//''(false) 
echo '<br/>'; 
echo empty($c);//1(true) 
echo '<br/>'; 
echo empty($d);//1(true) 
echo '<br/>'; 
echo empty($e);//1(true) 
echo '<br/>'; 
echo empty($f);//1(true) 
echo '<br/>'; 
echo empty($g);//1(true) 
echo '<br/>'; 
echo empty($h);//1(true) 
echo '<br/>'; 
echo empty($f);//1(true) 
?>

is_int()的基本使用。类似的函数有:is_float()、is_double()、is_string()、is_bool()、is_array()、is_null()、is_long()、is_object()、is_resource()、is_numeric()、is_real()等。
<?php 
$a = 11; 
$b = 1.23; 
$c = 3.1415926; 
$d = "hello"; 
$e = false; 
$f = array(); 
$g = null; 
echo is_int($a);//1 
echo '<br/>'; 
echo is_float($b);//1 
echo '<br/>'; 
echo is_double($c);//1 
echo '<br/>'; 
echo is_string($d);//1 
echo '<br/>'; 
echo is_bool($e);//1 
echo '<br/>'; 
echo is_array($f);//1 
echo '<br/>'; 
echo is_null($g);//1 
echo '<br/>'; 
echo is_numeric($a);//1 
?>

Intval()函数的基本使用。类似的函数为:floatval()、strval()
<?php 
$a = 22.23; 
echo gettype($a);//double 
echo '<br/>'; 
$b = intval($a);//类型转换后不改变$a原来的类型 
echo gettype($a);//double 
echo '<br/>'; 
?> 
<?php 
$a = 22.23; 
echo gettype($a);//double 
echo '<br/>'; 
settype($a,"integer");//类型转换后会改变$aa原来的类型 
echo gettype($a);//integer 
echo '<br/>'; 
?>

7.变量的作用域

超级全局变量

变量名 作用
$GLOBALS 所有全局变量数组
$_SERVER 服务器环境变量数组
$_GET 通过GET方式传递给该脚本的变量数组
$_POST 通过POST方式传递给该脚本的变量数组
$_COOKIE COOKIE变量数组
$_FILES 与文件上传相关的变量数组
$_ENV 环境变量数组
$_REQUEST 所用用户输入的变量数组
$_SESSION 会话变量数组

8.常量
一旦被定义之后,就不能再次更改。
<?php 
define("TOTAL",100); 
echo TOTAL;//100 
echo '<br/>'; 
define("TOTAL",200); 
echo TOTAL;//100 
?>

查看PHP预定义的常量的方法
<?php 
phpinfo(); 
?>

引用PHP预定义常量的方法
<?php 
echo $_SERVER["SERVER_NAME"];//localhost 
echo '<br/>'; 
echo $_SERVER["SERVER_PORT"];//8090 
echo '<br/>'; 
echo $_SERVER["DOCUMENT_ROOT"];//D:/AppServ/www 
echo '<br/>'; 
?>

五.访问表单变量
常见的三种方式
<?php 
echo $username;//简短风格,容易与变量名混淆,不推荐使用。 
echo '<br/>'; 
echo $_POST['username'];//中等风格,4.1.0版后支持,推荐 
echo '<br/>'; 
echo $HTTP_POST_VARS['username'];//冗长风格,已过时,将来可能会被剔除 
?>

Posttest.html
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
<title>获取表单数据的方式</title> 
</head> 
<body> 
<form method="POST" action="demo10.php"> 
username:<input type="text" name="username" /> 
<input type="submit" value="submit" /> 
</form> 
</body> 
</html>

六.字符串连接用.
<?php 
echo "the student name is :".$_POST['username']; 
echo "<br/>"; 
echo "welcome to "."school"; 
?>
PHP 相关文章推荐
PHP 万年历实现代码
Oct 18 PHP
PHP使用正则表达式获取微博中的话题和对象名
Jul 18 PHP
PHP如何将log信息写入服务器中的log文件
Jul 29 PHP
php中注册器模式类用法实例分析
Nov 03 PHP
thinkphp3.2.3版本的数据库增删改查实现代码
Sep 22 PHP
PHP解压ZIP文件到指定文件夹的方法
Nov 17 PHP
PHP开发中csrf攻击的简单演示和防范
May 07 PHP
php简单构造json多维数组的方法示例
Jun 08 PHP
ThinkPHP5.0 图片上传生成缩略图实例代码说明
Jun 20 PHP
php自定义排序uasort函数示例【二维数组按指定键值排序】
Jun 19 PHP
Laravel框架集合用法实例浅析
May 14 PHP
php的单例模式及应用场景详解
Feb 27 PHP
php 短链接算法收集与分析
Dec 30 #PHP
php的大小写敏感问题整理
Dec 29 #PHP
php读取mysql乱码,用set names XXX解决的原理分享
Dec 29 #PHP
php站内搜索并高亮显示关键字的实现代码
Dec 29 #PHP
PHP数组 为文章加关键字连接 文章内容自动加链接
Dec 29 #PHP
PHP防CC攻击实现代码
Dec 29 #PHP
php curl常见错误:SSL错误、bool(false)
Dec 28 #PHP
You might like
PHP中,文件上传
2006/12/06 PHP
Thinkphp单字母函数使用指南
2016/05/08 PHP
thinkphp隐藏index.php/home并允许访问其他模块的实现方法
2016/10/13 PHP
php中序列化与反序列化详解
2017/02/13 PHP
基于PHP的登录和注册的功能的实现
2020/08/06 PHP
JavaScript中的无阻塞加载性能优化方案
2014/10/10 Javascript
jQuery使用hide方法隐藏指定元素class样式用法实例
2015/03/30 Javascript
Nginx上传文件全部缓存解决方案
2015/08/17 Javascript
微信小程序 devtool隐藏的秘密
2017/01/21 Javascript
基于BootStrap multiselect.js实现的下拉框联动效果
2017/07/28 Javascript
js原生实现移动端手指滑动轮播图效果的示例
2018/01/02 Javascript
移动web开发之touch事件实例详解
2018/01/17 Javascript
Vue中render方法的使用详解
2018/01/26 Javascript
Vue中的作用域CSS和CSS模块的区别
2018/10/09 Javascript
解决echarts的多个折现数据出现坐标和值对不上的问题
2018/12/28 Javascript
Vue中watch、computed、updated三者的区别及用法
2020/07/27 Javascript
JavaScript实现消消乐的源代码
2021/01/12 Javascript
[01:01:04]2018DOTA2亚洲邀请赛 4.5 淘汰赛 OpTic vs TNC 第一场
2018/04/06 DOTA
详细介绍Ruby中的正则表达式
2015/04/10 Python
详解Python的Django框架中的Cookie相关处理
2015/07/22 Python
玩转python爬虫之爬取糗事百科段子
2016/02/17 Python
分享python数据统计的一些小技巧
2016/07/21 Python
python实现两个文件合并功能
2018/04/01 Python
python 含子图的gif生成时内存溢出的方法
2019/07/07 Python
Jupyter notebook无法导入第三方模块的解决方式
2020/04/15 Python
Ray-Ban雷朋瑞典官方网站:全球领先的太阳眼镜品牌
2019/08/22 全球购物
实现strstr功能,即在父串中寻找子串首次出现的位置
2016/08/05 面试题
JAVA和C++的区别
2013/10/06 面试题
介绍一下Java中标识符的命名规则
2014/02/03 面试题
个人简历自我评价
2014/01/06 职场文书
森林病虫害防治方案
2014/06/02 职场文书
节约每一滴水演讲稿
2014/09/09 职场文书
2015年学校远程教育工作总结
2015/07/20 职场文书
创业计划书之川味火锅店
2019/09/02 职场文书
导游词之介休绵山
2019/12/31 职场文书
Python多线程实用方法以及共享变量资源竞争问题
2022/04/12 Python