第二章 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中的Class的几点个人看法
Oct 09 PHP
如何分别全角和半角以避免乱码
Oct 09 PHP
使用 MySQL 开始 PHP 会话
Dec 21 PHP
php 数组二分法查找函数代码
Feb 16 PHP
PHP在网页中动态生成PDF文件详细教程
Jul 05 PHP
PHP中imagick函数的中文解释
Jan 21 PHP
php中使用key,value,current,next和prev函数遍历数组的方法
Mar 17 PHP
php限制文件下载速度的代码
Oct 20 PHP
实例讲解如何在PHP的Yii框架中进行错误和异常处理
Mar 17 PHP
Yii调试查看执行SQL语句的方法
Jul 15 PHP
实例讲解php将字符串输出到HTML
Jan 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 mysql Errcode: 28 终极解决方法
2009/07/01 PHP
分享一个PHP数据流应用的简单例子
2012/06/01 PHP
php调用淘宝开放API实现根据卖家昵称获取卖家店铺ID的方法
2015/07/29 PHP
thinkPHP模板引擎用法示例
2016/12/08 PHP
JAVASCRIPT对象及属性
2007/02/13 Javascript
javascript内存管理详细解析
2013/11/11 Javascript
JavaScript中的document.referrer在各种浏览器测试结果
2014/07/18 Javascript
轻松创建nodejs服务器(8):非阻塞是如何实现的
2014/12/18 NodeJs
JS实现仿Windows7风格的网页右键菜单效果代码
2015/09/11 Javascript
jQuery实现简单的DIV拖动效果
2016/02/19 Javascript
js实现移动端微信页面禁止字体放大
2017/02/16 Javascript
JavaScript手风琴页面制作
2017/05/17 Javascript
JS组件系列之Gojs组件 前端图形化插件之利器
2017/11/29 Javascript
详解Angular中实现自定义组件的双向绑定的两种方法
2018/11/23 Javascript
vue踩坑记录之数组定义和赋值问题
2019/03/20 Javascript
Vue.js实现备忘录功能
2019/06/26 Javascript
js get和post请求实现代码解析
2020/02/06 Javascript
JavaScript实现简易聊天对话框(加滚动条)
2020/02/10 Javascript
mpvue网易云短信接口实现小程序短信登录的示例代码
2020/04/03 Javascript
[02:35]DOTA2英雄基础教程 狙击手
2014/01/14 DOTA
Python中Django框架利用url来控制登录的方法
2015/07/25 Python
python使用fcntl模块实现程序加锁功能示例
2017/06/23 Python
python 处理string到hex脚本的方法
2018/10/26 Python
python+os根据文件名自动生成文本
2019/03/21 Python
python交易记录整合交易类详解
2019/07/03 Python
安装python3.7编译器后如何正确安装opnecv的方法详解
2020/06/16 Python
六十大寿答谢词
2014/01/12 职场文书
家长对老师的感言
2014/03/11 职场文书
施工安全承诺书
2014/05/22 职场文书
财务工作犯错检讨书
2014/10/07 职场文书
运动会广播稿200米(5篇)
2014/10/15 职场文书
2014年财政局工作总结
2014/12/09 职场文书
小学生六年级作文之关于感恩
2019/08/16 职场文书
Python实现拼音转换
2021/06/07 Python
MybatisPlus代码生成器的使用方法详解
2021/06/13 Java/Android
vue配置型表格基于el-table拓展之table-plus组件
2022/04/12 Vue.js