SlideShare ist ein Scribd-Unternehmen logo
1 von 47
PHP for FE
  拔赤 bachi@taobao.com
http://www.uedagazine.com
        2010-09-01
• 快捷入门
• 面向对象
• 更多资料
• 快捷入门
• 面向对象
• 更多资料
数据类型
数据类型
•   Integer 整型
•   Double 浮点数
•   String 字符串
•   Array 数组
•   Object 对象
•   Class 类
常用函数

is_string   //判断是否是数字
is_array    //判断是否是数组
is_int      //判断是否是整型
is_double   //判断是否为双精度类型
is_object   //判断是否为对象
isset       //判断变量是否存在
settype     //设置变量类型
gettype     //得到变量类型
常用符号
常用符号

$    //变量前缀
&    //指针前缀
@    //不显示错误信息
->   //对象的方法或属性
=>   //数组的元素值
?:   //条件判断
__   //魔术函数前缀
函数使用外部变量
使用外部变量

$a = 1;
function foo(){
       global $a; //使用a之前必须要声明
}
foo();
打印变量
打印变量

$a='hello';
echo '$a world';   //输出$a world
echo "$a world";   //输出 hello world
echo '$a'."$a";    //输出 $ahello
变量的变量
变量的变量

$a='hello';
$$a='world';
echo "$a$world";   //输出 helloworld
echo "$a${$a}";    //输出 helloworld
变量函数
变量函数

//传入一个函数的引用
function fun( $callback){
     $callback();
}
指针
指针
$a = 1;
$b = $a;    //$b的值拷贝自$a的值
$b = 2;     //改变$b的值
echo $b;    //输出$b的值:2
echo $a;    //输出$a的值:1

$a = 1;
$b = &$a;   //$b指向$a所指向的变量
$b = 2;     //改变$b所指向的变量的值
echo $b;    //输出$b所指向的变量值:2
echo $a;    //输出$a所指向的变量值:2
指针 续
function foo(&$a){
     $a.="extra_str"; //操作的是a的指针
}
foo($str);


function foo($a){
     $a.="extra_str";
}
foo(&$str);     //操作的str是指针
函数默认值
函数默认值


function foo( $type='js' ){
       echo $type;
}
foo();      //输出js
include和require
include和require
//遇到异常则报警告,程序继续执行
include('not_exist_file.php');




//遇到异常则报错,程序中断执行
require('not_exist_file.php');
include和require 续
for($i=0;$i<3;$i++){
      include('filename.php');
}
//引入了三次,require亦然

for($i=0;$i<3;$i++){
      include_once('filename.php');
}
//引入了一次,require_once亦然
for,foreach,each
for,foreach,each
//输出 1,2,3,4,5
$a = array(1,2,3,4,5);
for($i=0;$i< count($a);$i++){
      echo $a[$i];
}

//输出 1,2,3,4,5
$a = array(1, 2, 3, 4 , 5);
foreach ($a as $v) {
   echo $v;
}
for,foreach,each 续
//输出 0~1,1~2,2~3,3~4,4~5
$a = array(1, 2, 3, 4, 5);
foreach ($a as $k => $v) {
   echo $k.'~'.$v.',';
}
for,foreach,each 续
$a = array("first", "second");
/* 输出:Array (
   [1] => first
   [value] => first
   [0] => 0
   [key] => 0
) */
print_r( each($a));
/* 输出:Array (
   [1] => second
   [value] => second
   [0] => 1
   [key] => 1
) */
print_r( each($a));
• 快捷入门
• 面向对象
• 更多资料
类
类
class my_class
{
   static $status = 'ok'; //静态成员
   private $email = 'a@b.com'; //私有成员
   public $username = 'jayli'; //共有成员(默认)
   public function getName(){ //共有方法
      return $this->username;
   }
   private function getStatus(){ //私有方法
      return $this->status;
   }
}
调用类静态方法
class A{
      function foo(){
           //your code…
      }
}
A::foo();
类构造&析构
class A{
      function __construct() {
           //构造函数
      }
      function __destruct() {
           //析构函数
      }
}
对象拷贝
$a = new Class_A();
$b = clone $a;        //$b 克隆自 $a
数组
数组
$a = array();   //定义一个空数组
$a[] = 'abc';   //压栈,$a[0]='abc'
• 快捷入门
• 面向对象
• 更多资料
HTTP函数
http函数
//header:发送http头
header("Location: http://www.php.net");
header("Expires: Mon, 26 Jul 2010 GMT");
header("Status: 404 Not Found");

• urlencode         //url编码
• urldecode         //url解码
表单处理
表单处理
•   $_POST      //POST的表单数据
•   $_GET       //GET的表单数据
•   $_SERVER    //服务器信息
•   $_REQUEST   //请求参数数组
JSON
JSON
• json_encode   //转换成json格式
• json_decode   //解码json格式
字符串函数
字符串函数
•   explode //切开字符串(String.split())
•   implode //将数组变成字符串(Array.join())
•   join //同上
•   print_r //输出数组数据
•   str_replace //字符串替换
•   preg_replace //批量字符串替换
•   substr //取出子字符串
更多:
• http://cn.php.net/
• http://www.w3school.com.cn/php/inde
  x.asp
Q&A

Weitere ähnliche Inhalte

Was ist angesagt?

那些年,我們一起看的例外
那些年,我們一起看的例外那些年,我們一起看的例外
那些年,我們一起看的例外
kao kuo-tung
 
基于原型的JavaScript面向对象编程
基于原型的JavaScript面向对象编程基于原型的JavaScript面向对象编程
基于原型的JavaScript面向对象编程
zhangdaiping
 
《Java程序设计》期末考试试题 (六)
《Java程序设计》期末考试试题 (六)《Java程序设计》期末考试试题 (六)
《Java程序设计》期末考试试题 (六)
jane2006
 
Google developer tool 簡介
Google developer tool 簡介Google developer tool 簡介
Google developer tool 簡介
Shu Ting Hsieh
 
jsp基础速成精华讲解
jsp基础速成精华讲解jsp基础速成精华讲解
jsp基础速成精华讲解
wensheng wei
 
由Hash Set谈重用
由Hash Set谈重用由Hash Set谈重用
由Hash Set谈重用
yiditushe
 

Was ist angesagt? (20)

常見設計模式介紹
常見設計模式介紹常見設計模式介紹
常見設計模式介紹
 
Swift 程序语言介绍
Swift 程序语言介绍Swift 程序语言介绍
Swift 程序语言介绍
 
Node way
Node wayNode way
Node way
 
那些年,我們一起看的例外
那些年,我們一起看的例外那些年,我們一起看的例外
那些年,我們一起看的例外
 
PHP & MySQL 教學
PHP & MySQL 教學PHP & MySQL 教學
PHP & MySQL 教學
 
基于原型的JavaScript面向对象编程
基于原型的JavaScript面向对象编程基于原型的JavaScript面向对象编程
基于原型的JavaScript面向对象编程
 
《Java程序设计》期末考试试题 (六)
《Java程序设计》期末考试试题 (六)《Java程序设计》期末考试试题 (六)
《Java程序设计》期末考试试题 (六)
 
5, initialization & cleanup
5, initialization & cleanup5, initialization & cleanup
5, initialization & cleanup
 
Maintainable PHP Source Code
Maintainable PHP Source CodeMaintainable PHP Source Code
Maintainable PHP Source Code
 
Google developer tool 簡介
Google developer tool 簡介Google developer tool 簡介
Google developer tool 簡介
 
jsp基础速成精华讲解
jsp基础速成精华讲解jsp基础速成精华讲解
jsp基础速成精华讲解
 
2011中正資管學術部講座 Java-Object
2011中正資管學術部講座 Java-Object2011中正資管學術部講座 Java-Object
2011中正資管學術部講座 Java-Object
 
JavaScript 闭包分享(一):传递参数
JavaScript 闭包分享(一):传递参数JavaScript 闭包分享(一):传递参数
JavaScript 闭包分享(一):传递参数
 
進階主題
進階主題進階主題
進階主題
 
Ch10
Ch10Ch10
Ch10
 
由Hash Set谈重用
由Hash Set谈重用由Hash Set谈重用
由Hash Set谈重用
 
Json知识分享
Json知识分享Json知识分享
Json知识分享
 
PHPUnit + Xdebug 单元测试技术
PHPUnit + Xdebug 单元测试技术PHPUnit + Xdebug 单元测试技术
PHPUnit + Xdebug 单元测试技术
 
PHPUnit 入門介紹
PHPUnit 入門介紹PHPUnit 入門介紹
PHPUnit 入門介紹
 
Moodle 项目帮助手册:程序编写准则
Moodle 项目帮助手册:程序编写准则Moodle 项目帮助手册:程序编写准则
Moodle 项目帮助手册:程序编写准则
 

Andere mochten auch (6)

Relokasi industri
Relokasi industriRelokasi industri
Relokasi industri
 
面向工程师的HTML
面向工程师的HTML面向工程师的HTML
面向工程师的HTML
 
Ecmascript
EcmascriptEcmascript
Ecmascript
 
深入剖析浏览器
深入剖析浏览器深入剖析浏览器
深入剖析浏览器
 
犀牛书第六版
犀牛书第六版犀牛书第六版
犀牛书第六版
 
JavaScript Engine
JavaScript EngineJavaScript Engine
JavaScript Engine
 

Ähnlich wie Php for fe

Js的国(转载)
Js的国(转载)Js的国(转载)
Js的国(转载)
Leo Hui
 
Node.js开发体验
Node.js开发体验Node.js开发体验
Node.js开发体验
QLeelulu
 
jQuery底层架构
jQuery底层架构jQuery底层架构
jQuery底层架构
fangdeng
 
钟志 第八期Web标准化交流会
钟志 第八期Web标准化交流会钟志 第八期Web标准化交流会
钟志 第八期Web标准化交流会
Zhi Zhong
 
XMLHTTPRequest的属性和方法简介
XMLHTTPRequest的属性和方法简介XMLHTTPRequest的属性和方法简介
XMLHTTPRequest的属性和方法简介
wensheng wei
 
Puppet安装测试
Puppet安装测试Puppet安装测试
Puppet安装测试
Yiwei Ma
 
Free Marker中文文档
Free Marker中文文档Free Marker中文文档
Free Marker中文文档
yiditushe
 
Introduction to Parse JavaScript SDK
Introduction to Parse JavaScript SDKIntroduction to Parse JavaScript SDK
Introduction to Parse JavaScript SDK
維佋 唐
 
OpenWebSchool - 02 - PHP Part I
OpenWebSchool - 02 - PHP Part IOpenWebSchool - 02 - PHP Part I
OpenWebSchool - 02 - PHP Part I
Hung-yu Lin
 
由一个简单的程序谈起――之五(精华)
由一个简单的程序谈起――之五(精华)由一个简单的程序谈起――之五(精华)
由一个简单的程序谈起――之五(精华)
yiditushe
 
用Jquery实现拖拽层
用Jquery实现拖拽层用Jquery实现拖拽层
用Jquery实现拖拽层
yiditushe
 

Ähnlich wie Php for fe (20)

PHP 語法基礎與物件導向
PHP 語法基礎與物件導向PHP 語法基礎與物件導向
PHP 語法基礎與物件導向
 
Js的国(转载)
Js的国(转载)Js的国(转载)
Js的国(转载)
 
Node.js开发体验
Node.js开发体验Node.js开发体验
Node.js开发体验
 
iOS swift 接力使力之玩 open data
iOS swift 接力使力之玩 open dataiOS swift 接力使力之玩 open data
iOS swift 接力使力之玩 open data
 
jQuery底层架构
jQuery底层架构jQuery底层架构
jQuery底层架构
 
CRUD 綜合運用
CRUD 綜合運用CRUD 綜合運用
CRUD 綜合運用
 
钟志 第八期Web标准化交流会
钟志 第八期Web标准化交流会钟志 第八期Web标准化交流会
钟志 第八期Web标准化交流会
 
XMLHTTPRequest的属性和方法简介
XMLHTTPRequest的属性和方法简介XMLHTTPRequest的属性和方法简介
XMLHTTPRequest的属性和方法简介
 
Puppet安装测试
Puppet安装测试Puppet安装测试
Puppet安装测试
 
javascript的分层概念 --- 阿当
javascript的分层概念 --- 阿当javascript的分层概念 --- 阿当
javascript的分层概念 --- 阿当
 
Free Marker中文文档
Free Marker中文文档Free Marker中文文档
Free Marker中文文档
 
Introduction to Parse JavaScript SDK
Introduction to Parse JavaScript SDKIntroduction to Parse JavaScript SDK
Introduction to Parse JavaScript SDK
 
OpenWebSchool - 02 - PHP Part I
OpenWebSchool - 02 - PHP Part IOpenWebSchool - 02 - PHP Part I
OpenWebSchool - 02 - PHP Part I
 
JavaScript 教程
JavaScript 教程JavaScript 教程
JavaScript 教程
 
Keep your code clean
Keep your code cleanKeep your code clean
Keep your code clean
 
由一个简单的程序谈起――之五(精华)
由一个简单的程序谈起――之五(精华)由一个简单的程序谈起――之五(精华)
由一个简单的程序谈起――之五(精华)
 
PHP Coding Standard and 50+ Programming Skills
PHP Coding Standard and 50+ Programming SkillsPHP Coding Standard and 50+ Programming Skills
PHP Coding Standard and 50+ Programming Skills
 
用Jquery实现拖拽层
用Jquery实现拖拽层用Jquery实现拖拽层
用Jquery实现拖拽层
 
Javascript Training
Javascript TrainingJavascript Training
Javascript Training
 
Java Script 引擎技术
Java Script 引擎技术Java Script 引擎技术
Java Script 引擎技术
 

Mehr von jay li (20)

淘宝移动端Web开发最佳实践
淘宝移动端Web开发最佳实践淘宝移动端Web开发最佳实践
淘宝移动端Web开发最佳实践
 
Jswebapps
JswebappsJswebapps
Jswebapps
 
潜力无限的编程语言Javascript
潜力无限的编程语言Javascript潜力无限的编程语言Javascript
潜力无限的编程语言Javascript
 
Responsive Web UI Design
Responsive Web UI DesignResponsive Web UI Design
Responsive Web UI Design
 
HTML/CSS/JS基础
HTML/CSS/JS基础HTML/CSS/JS基础
HTML/CSS/JS基础
 
淘宝前端技术巡礼
淘宝前端技术巡礼淘宝前端技术巡礼
淘宝前端技术巡礼
 
F2e security
F2e securityF2e security
F2e security
 
中国元素在设计中的应用 -如瑟
中国元素在设计中的应用 -如瑟中国元素在设计中的应用 -如瑟
中国元素在设计中的应用 -如瑟
 
卫银霞 -统计数字会撒谎
卫银霞 -统计数字会撒谎卫银霞 -统计数字会撒谎
卫银霞 -统计数字会撒谎
 
编码大全 拔赤
编码大全 拔赤编码大全 拔赤
编码大全 拔赤
 
小控件、大学问
小控件、大学问小控件、大学问
小控件、大学问
 
Mobile UI design and Developer
Mobile UI design and DeveloperMobile UI design and Developer
Mobile UI design and Developer
 
Javascript autoload
Javascript autoloadJavascript autoload
Javascript autoload
 
Html5form
Html5formHtml5form
Html5form
 
Slide
SlideSlide
Slide
 
Js doc toolkit
Js doc toolkitJs doc toolkit
Js doc toolkit
 
新业务新员工培训 Banner设计
新业务新员工培训   Banner设计新业务新员工培训   Banner设计
新业务新员工培训 Banner设计
 
夏之 专题设计
夏之 专题设计夏之 专题设计
夏之 专题设计
 
赤骥 用户研究入门
赤骥 用户研究入门赤骥 用户研究入门
赤骥 用户研究入门
 
2011彩票首页开发实践
2011彩票首页开发实践2011彩票首页开发实践
2011彩票首页开发实践
 

Php for fe