SlideShare a Scribd company logo
Lập trình và Thiết kế Web 1
© 2007 Khoa Công nghệ thông tin
Khoa CNTT – ĐH.KHTN
Bài 7
PHP Cơ bản
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Nội dung
 Giới thiệu PHP
 Cơ chế hoạt động của WebServer
 Cú pháp & Quy ước trong PHP
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Nội dung
 Giới thiệu PHP
 Cơ chế hoạt động của WebServer
 Cú pháp & Quy ước trong PHP
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Giới thiệu về PHP – Lịch sử phát triển
 PHP : Rasmus Lerdorf in 1994 (được phát triển để phát sinh các form đăng nhập
sử dụng giao thức HTTP của Unix)
 PHP 2 (1995) : Chuyển sang ngôn ngữ script xử lý trên server. Hỗ trợ CSDL,
Upload File, khai báo biến, mảng, hàm đệ quy, câu điều kiện, biểu thức, …
 PHP 3 (1998) : Hỗ trợ ODBC, đa hệ điều hành, giao thức email (SNMP, IMAP),
bộ phân tích mã PHP (parser) của Zeev Suraski và Andi Gutmans
 PHP 4 (2000) : Trợ thành một thành phần độc lập cho các webserver. Parse đổi
tên thành Zend Engine. Bổ sung các tính năng bảo mật cho PHP
 PHP 5 (2005) : Bổ sung Zend Engine II hỗ trợ lập trình HĐT, XML, SOAP cho
Web Services, SQLite
 Phiên bản mới nhất của PHP là version PHP 5.2.4 (www.php.net)
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Giới thiệu về PHP – PHP là gì ?
 PHP viết tắt của PHP Hypertext Preprocessor
 Là ngôn ngữ server-side script, tương tự như ASP,
JSP, … thực thi ở phía WebServer
 Tập tin PHP có phần mở rộng là .php
 Cú pháp ngôn ngữ giống ngôn ngữ C & Perl
Ưu điểm
PHP ?
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Giới thiệu về PHP – Ưu điểm 1
 PHP được sử dụng làm
– Server Side Scripting
– CommandLine Scripting (cron – Linux, Task Scheduler –
Windows, Text Processing)
– Xây dựng ứng Desktop – PHP GTK
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Giới thiệu về PHP – Ưu điểm 2
 Đa môi trường (Multi-Platform)
– Web Servers: Apache, Microsoft IIS, Caudium, Netscape
Enterprise Server
– Hệ điều hành: UNIX (HP-UX, OpenBSD, Solaris, Linux), Mac
OSX, Windows NT/98/2000/XP/2003/vista
– Hệ QTCSDL: Adabas D, dBase,Empress, FilePro (read-only),
Hyperwave, IBM DB2, Informix, Ingres, InterBase, FrontBase,
mSQL, Direct MS-SQL, MySQL, ODBC, Oracle (OCI7 and OCI8),
Ovrimos, PostgreSQL, SQLite, Solid, Sybase, Velocis,Unix dbm
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Giới thiệu về PHP – Ưu điểm 3
 Miễn phí
PHP
Software Free
Platform
Free (Linux)
Development Tools Free (PHP Coder, jEdit, …)
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Giới thiệu về PHP – Ưu điểm 4
 Được sử dụng rộng rãi trong môi trường phát triển web
– 20,917,850 domains (chiếm hơn 32% tên miền website)
– 1,224,183 IP addresses
(04/2007 Netcraft Survey – http://www.php.net/usage.php)
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Giới thiệu về PHP – Một số website lớn
PHP at Yahoo!
http://www.yahoo.com
The Internet’s most trafficked site
Portal
Wiki
Course Management System
Portal
Bulletin Board Content Management System
Customer Relationship Management
Help Desk
e-Commerce
Portal
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Giới thiệu về PHP – Cần gì để chạy PHP ?
 Download PHP
– Download PHP for free here:
http://www.php.net/downloads.php
 Download MySQL Database
– Download MySQL for free here:
http://www.mysql.com/downloads/index.html
 Download Apache Server
– Download Apache for free here:
http://httpd.apache.org/download.cgi
 Download WAMP,LAMP
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Nội dung
 Giới thiệu PHP
 Cơ chế hoạt động của WebServer
 Cú pháp & Quy ước trong PHP
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Cơ chế hoạt động của WebServer
2
Internet
or Intranet
www.example.com
Webserver Apache
or IIS
ServerSide Script
Parser
(PHP, ASP, ..)
Database
Server
Disk
driver
3
45
67
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Cơ chế hoạt động của WebServer
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Cơ chế hoạt động của WebServer
 Parser.asp  Parser.php
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Nội dung
 Giới thiệu PHP
 Cơ chế hoạt động của WebServer
 Cú pháp & Quy ước trong PHP
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Cú pháp & Quy ước trong PHP
 Quy ước
 Khai báo biến
 Kiểu dữ liệu
 Toán tử
 Cấu trúc điều khiển
 Hàm
 Lớp đối tượng
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Quy ước
 Mã lệnh PHP được đặt trong các cặp thẻ sau :
Thẻ mở Thẻ đóng
<? ?>
<?php ?>
<script language="php"> <script>
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Quy ước
 Tất cả các câu lệnh php đều cách nhau bởi dấu “;”
 Không phân biệt khoảng trắng, Tab, xuống dòng trong câu lệnh
<?php print "Hello"; print " World!"; ?>
<?php
Print “Hello” ;
print “ World!”;
?>
 Ghi chú : Theo cú pháp ghi chú của C++ & Perl
// Đây là ghi chú
# Đây là ghi chú
/* Đây là ghi
chú nhiều dòng*/
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Cú pháp & Quy ước trong PHP
 Quy ước
 Khai báo biến
 Kiểu dữ liệu
 Toán tử
 Cấu trúc điều khiển
 Hàm
 Lớp đối tượng
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Khai báo biến
$ten_bien = value;
 Không khai báo kiểu dữ liệu
 Biến tự động được khởi tạo ở lần đầu tiên gán giá trị cho biến
 Tên biến :
– Có thể bao gồm các Ký tự (A..Z, a..z), Ký số (0..9), _, $
– Không được bắt dầu bằng ký số (0..9)
– Phân biệt chữ hoa – chữ thường
Ví dụ :
$size $my_drink_size $_drinks $drink4you
$$2hot4u $drink-size x
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Khai báo biến
 Variable variables
– Cho phép thay đổi tên biến
– Ví dụ:
$varname = “Bien_moi”;
$$varname = “xyz”; // $Bien_moi = “xyz”
 Hằng số - Constants
– Ví dụ:
define(“MY_CONST”, 10);
echo MY_CONST;
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Cú pháp & Quy ước trong PHP
 Quy ước
 Khai báo biến
 Kiểu dữ liệu
 Toán tử
 Cấu trúc điều khiển
 Hàm
 Lớp đối tượng
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Kiểu dữ liệu
 boolean (bool)
 integer (int)
 double (float, real)
 string
 array
 object
1 Biến trong PHP có thể lưu bất kỳ kiểu dữ liệu nào.
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Kiểu dữ liệu (tt)
 Chuyển kiểu dữ liệu
– Cách 1 (automatic)
$var = "100" + 15;
$var = "100" + 15.0;
$var = 39 . " Steps";
– Cách 2: (datatype) $var
– Cách 3: settype($var, “datatype”)
$var (int)$var (bool)$var (string)$var
null 0 false “”
true 1 “1”
false 0 “”
“6 feet” 6 true
“foo” 0 true
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Kiểu dữ liệu (tt)
 Kiểm tra kiểu dữ liệu
gettype is_string isset
is_integer is_array unset
is_double is_object empty
Ví dụ:
$var = "test";
if (isset($var))
echo "Variable is Set";
if (empty($var))
echo "Variable is Empty";
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Kiểu số - int, float
 Một số hàm xử lý số
– abs pow decbin srand(seed)
– ceil sqrt bindec rand
– floor log dechex rand(min, max)
– round log10 hexdec …
 Ví dụ
// Phát sinh một “mầm” ngẫu nhiên
$seed = (float) microtime( ) * 100000000;
// Khởi tạo bộ phát sinh số ngẫu nhiên
srand($seed);
// In con số ngẫu nhiên
print rand(); // Giá trị ngẫu nhiên từ 0 đến getmaxrand( )
print rand(1, 6); // Giá trị ngẫu nhiên từ 1 đến 6
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Kiểu chuỗi - string
 Toán tử nối chuỗi : dấu chấm .
$s = “Hello” . “ World”; // $s = “Hello World”
 Phân biệt dấu nháy đơn và nháy kép
$user = “Bill”;
print „Hi $user‟; // Hi $user
print “Hi $user”; // Hi Bill
print „Hi‟ . $user; // ????
print „Hi‟ . „$user‟; // ????
 Một số hàm xử lý chuỗi
– printf trim strtolower
– str_pad str_replace strtoupper
– strlen substr strcasecmp
– …
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Ví dụ
<?
$tax = 0.075;
printf('The tax costs $%.2f', $tax);
$zip = '6520';
printf("ZIP is %05d”, $zip);
$min = -40; $max = 40;
printf("The computer can operate between %+d and %+d
degrees Celsius.", $min, $max);
?>
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Ví dụ
<?
echo “<pre>”
// Print a heading
echo str_pad(“Dramatis Personae", 50, " ", STR_PAD_BOTH) . “n";
// Print an index line
echo str_pad(“DUNCAN, king of Scotland”, 30, ".")
. str_pad(“Larry”, 20, ".", STR_PAD_LEFT)
. “n";
echo “</pre>”
?>
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Mảng - array
 Numbered array
$words = array("Web", "Database", "Applications");
echo $words[0];
$numbers = array(1=>“one”,“two”,“three”, "four");
echo $numbers[1];
 Associated array
$array = array("first"=>1, "second"=>2, "third"=>3);
echo $array["second"];
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Mảng - array
 Một số hàm xử lý trên mảng
– Count in_array sort asort ksort usort
– min array_reverse rsort arsort krsprt uasort
– max uksort
 Ví dụ:
$dinner = array(
'Sweet Corn and Asparagus',
'Lemon Chicken',
'Braised Bamboo Fungus');
sort($dinner);
print "I want $dinner[0] and $dinner[1].";
$dishes = count($dinner);
print $dishes;
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Mảng - array
 Một số hàm liên quan đến mảng
– reset(array)
– array_push(array, elements) : Thêm elements vào cuối mảng
– array_pop(array) : Lấy phần tử cuối ra khỏi mảng
– array_unshift(array, elements) : Thêm elements vào đầu mảng
– array_shift(array) : Lấy phần tử đầu ra khỏi mảng
– array_merge(array, array) : kết 2 mảng lại và trả ra mảng mới
– shuffle(array) : Sort random mảng
– sort(array, flag) : flag = {sort_regular, sort_numeric, sort_string, sort_locale_string}
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Cú pháp & Quy ước trong PHP
 Quy ước
 Khai báo biến
 Kiểu dữ liệu
 Toán tử
 Cấu trúc điều khiển
 Hàm
 Lớp đối tượng
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Toán tử
Loại Toán tử Ghi chú
new
. [ ] ( )
Toán học + - * / % ++ --
So sánh < > <= >= != == === !==
Luận lý && || ?: ,
Xử lý bit ! ~ << >> >>>
AND OR XOR
Gán = += -= *= /= %=
>>= <<= &= |= ^= .=
Ép kiểu (kiểu dữ liệu) (int) (double) (string)…
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Cú pháp & Quy ước trong PHP
 Quy ước
 Khai báo biến
 Kiểu dữ liệu
 Toán tử
 Cấu trúc điều khiển
 Hàm
 Lớp đối tượng
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Cấu trúc điều khiển
 Điều kiện if
 Điều khiển switch
 Vòng lặp for
 Vòng lặp while
 Vòng lặp do.. While
 Vòng lặp foreach
 Từ khóa break, continue
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Điều kiện if
if (condition)
{
statement[s] if true
}
else (condition)
{
statement[s] if false
}
Ví dụ:
$x = 5;
if ($x < 4)
echo “$x is less than 4”;
else
print „$x isn‟t less than 4‟;
$x isn’t less than 4
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Điều khiển switch
switch (expression)
{
case label :
statementlist
break;
case label :
statementlist
break;
...
default :
statementlist
}
Ví dụ:
$menu = 3;
switch ($menu){
case 1:
echo "You picked one";
break;
case 2:
echo "You picked two";
break;
case 3:
echo "You picked three";
case 4:
echo "You picked four";
break;
default:
echo "You picked another option";
}
You picked three You picked four
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Vòng lặp for
for ([initial expression]; [condition]; [update expression])
{
statement[s] inside loop
}
 Ví dụ:
print “<select>”;
for ($i = 1; $i <= 12; $i++)
{
print “<option>$i</option>”;
}
print “</select>”;
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Vòng lặp while, do…while
while (expression)
{
statements
}
do
{
statements
}while (expression);
Ví dụ:
$i = 1; $j = 9;
while ($i <= 10)
{
$temp = $i * $j;
print “$j * $i = $temp<br>”;
$i++;
}
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Vòng lặp foreach
foreach (array as variable)
{
statements
}
Ví dụ:
$meal = array('breakfast' => 'Walnut Bun',
'lunch' => 'Cashew Nuts and White Mushrooms',
'dinner' => 'Eggplant with Chili Sauce');
print "<table border=„1‟>n";
foreach ($meal as $key => $value)
{
print "<tr><td>$key</td><td>$value</td></tr>n";
}
print '</table>';
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Cú pháp & Quy ước trong PHP
 Quy ước
 Khai báo biến
 Kiểu dữ liệu
 Toán tử
 Cấu trúc điều khiển
 Hàm
 Lớp đối tượng
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Hàm - function
function functionName ([parameter1]...[,parameterN])
{
statement[s] ;
}
function functionName ([parameter1]...[,parameterN])
{
statement[s] ;
return ….. ;
}
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Hàm – Phạm vi biến
<?php
function doublevalue($var=5)
{
global $temp;
$temp = $var * 2;
}
$temp = 5;
doublevalue();
echo "$temp is: $temp";
?>
$temp = 5
$temp = 10
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Hàm – Tham trị vs Tham biến
<?php
function doublevalue( $var)
{
$var = $var * 2;
}
$variable = 5;
doublevalue($variable);
echo "$variable is: $variable";
?>
$variable = 5
$variable =10
&
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Hàm – include & require
// functions.inc
<?php
function bold($string)
{
echo "<b>" . $string . "</b>n";
}
?>
// index.php
<html>
<head>
<title>Simple Function Call</title>
</head>
<body bgcolor="#ffffff">
<?
include "functions.inc";
bold("this is bold");
$myString = "this is bold";
bold($myString);
?>
</body></html>
require "functions.inc";
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Cú pháp & Quy ước trong PHP
 Quy ước
 Khai báo biến
 Kiểu dữ liệu
 Toán tử
 Cấu trúc điều khiển
 Hàm
 Lớp đối tượng
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Lớp đối tượng - class
class class_name() [extends superclass_name]
{
var $attribute;
…
function method_name()
{
$this->attribute = …;
}
…
}
$a = new class_name(…);
Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản
© 2007 Khoa CNTT - ĐHKHTN
Lớp đối tượng - class
 Ví dụ:
class Counter {
var $count = 0;
var $startPoint = 0;
function increment( ) {
$this->count++;
}
}
$aCounter = new Counter;
$aCounter->increment( );
echo $aCounter->count; // prints 1
$aCounter->count = 101;

More Related Content

PPTX
07 web course 1 php co ban
PDF
Web301 slide 4
PDF
Web course php & csdl
PDF
Web301 slide 2
PPTX
Giáo trình lập trình Wordpress - bài 4 - Tạo Plugin căn bản
PPTX
Học lập trình Wordpress - bài 2 - Tìm hiểu cấu trúc và cấu hình nâng cao
PDF
Php nang cao
PDF
Web201 slide 6
07 web course 1 php co ban
Web301 slide 4
Web course php & csdl
Web301 slide 2
Giáo trình lập trình Wordpress - bài 4 - Tạo Plugin căn bản
Học lập trình Wordpress - bài 2 - Tìm hiểu cấu trúc và cấu hình nâng cao
Php nang cao
Web201 slide 6

What's hot (20)

PDF
Web course php truyen nhan du lieu
PDF
Web301 slide 3
PDF
Lập trình hướng đối tượng trong PHP
PPTX
07 web course 2 php truyen nhan du lieu
PDF
Python moi
PDF
Tài liệu lập trình PHP từ căn bản đến nâng cao
PDF
Web course php ajax
PDF
Web203 slide 5
PDF
03 udpt php
PPTX
The First 2015 Saigon WordPress Meetup
PDF
Bài 4 Bảo mật cho website - Xây dựng ứng dụng web
PDF
Tài liệu Lập trình Zend Framework 2.x
PDF
Bài 2 Các kỹ thuật lập trình MySQL với PHP nâng cao - Xây dựng ứng dụng web
PDF
Web301 slide 1
PDF
Web201 slide 1
PPTX
Tài liệu lập trình Wordpress - bài 5 - Action và Action hook trong Wordpress
PDF
Bài 3 Một số kỹ thuật lập trình PHP nâng cao - Xây dựng ứng dụng web
PDF
Các quy định& chuẩn trong lập trình NukeViet
PDF
Bài 6 Lập trình PHP (phần 4) Làm việc với cookie và session - Giáo trình FPT
PPTX
Chương 3: Tạo web động
Web course php truyen nhan du lieu
Web301 slide 3
Lập trình hướng đối tượng trong PHP
07 web course 2 php truyen nhan du lieu
Python moi
Tài liệu lập trình PHP từ căn bản đến nâng cao
Web course php ajax
Web203 slide 5
03 udpt php
The First 2015 Saigon WordPress Meetup
Bài 4 Bảo mật cho website - Xây dựng ứng dụng web
Tài liệu Lập trình Zend Framework 2.x
Bài 2 Các kỹ thuật lập trình MySQL với PHP nâng cao - Xây dựng ứng dụng web
Web301 slide 1
Web201 slide 1
Tài liệu lập trình Wordpress - bài 5 - Action và Action hook trong Wordpress
Bài 3 Một số kỹ thuật lập trình PHP nâng cao - Xây dựng ứng dụng web
Các quy định& chuẩn trong lập trình NukeViet
Bài 6 Lập trình PHP (phần 4) Làm việc với cookie và session - Giáo trình FPT
Chương 3: Tạo web động
Ad

Similar to Web course php co ban (20)

PDF
Php can ban_bai1_laptrinhwebphp.com
PDF
Lập trình PHP và MySQL
PDF
Lap trinh PHP va MySQL (tài liệu tham khảo))
PDF
Laptrinh ph pvamysql
PDF
Ngôn ngữ lập trình PHP và MySQL - khoahoclaptrinhweb.tin.vn
PDF
Slide 01-Web Application Overview (1).pdf
PDF
B7_1_Tổng Quan PHP P1.pdfhelllllllllllllloooo
PPT
Php02 ngon nguphp
PDF
Tai lieu-laptrinh ph-pvamysql - bachkhoaaptech.com
PDF
Haiphongit.com.tai lieu-laptrinh ph-pvamysql
PDF
Tai lieu-laptrinh ph-pvamysql
PDF
Lap trinh php va my sql
PDF
Lap Trinh Php Va My Sql
PDF
Haiphongit.com.tai lieu-learning-php-my sql
DOCX
PMMNM.docx
PPTX
Giao trinh thiet ke web bai 4 - php
PDF
Tai lieu huong_dan_ve_lap_trinh_php_7512
PDF
Chuong07 php
PPT
Php Csdlweb06
PPTX
Lập trình php cơ bản 1. Lập trình php cơ bản 1.
Php can ban_bai1_laptrinhwebphp.com
Lập trình PHP và MySQL
Lap trinh PHP va MySQL (tài liệu tham khảo))
Laptrinh ph pvamysql
Ngôn ngữ lập trình PHP và MySQL - khoahoclaptrinhweb.tin.vn
Slide 01-Web Application Overview (1).pdf
B7_1_Tổng Quan PHP P1.pdfhelllllllllllllloooo
Php02 ngon nguphp
Tai lieu-laptrinh ph-pvamysql - bachkhoaaptech.com
Haiphongit.com.tai lieu-laptrinh ph-pvamysql
Tai lieu-laptrinh ph-pvamysql
Lap trinh php va my sql
Lap Trinh Php Va My Sql
Haiphongit.com.tai lieu-learning-php-my sql
PMMNM.docx
Giao trinh thiet ke web bai 4 - php
Tai lieu huong_dan_ve_lap_trinh_php_7512
Chuong07 php
Php Csdlweb06
Lập trình php cơ bản 1. Lập trình php cơ bản 1.
Ad

Web course php co ban

  • 1. Lập trình và Thiết kế Web 1 © 2007 Khoa Công nghệ thông tin Khoa CNTT – ĐH.KHTN Bài 7 PHP Cơ bản
  • 2. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Nội dung  Giới thiệu PHP  Cơ chế hoạt động của WebServer  Cú pháp & Quy ước trong PHP
  • 3. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Nội dung  Giới thiệu PHP  Cơ chế hoạt động của WebServer  Cú pháp & Quy ước trong PHP
  • 4. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Giới thiệu về PHP – Lịch sử phát triển  PHP : Rasmus Lerdorf in 1994 (được phát triển để phát sinh các form đăng nhập sử dụng giao thức HTTP của Unix)  PHP 2 (1995) : Chuyển sang ngôn ngữ script xử lý trên server. Hỗ trợ CSDL, Upload File, khai báo biến, mảng, hàm đệ quy, câu điều kiện, biểu thức, …  PHP 3 (1998) : Hỗ trợ ODBC, đa hệ điều hành, giao thức email (SNMP, IMAP), bộ phân tích mã PHP (parser) của Zeev Suraski và Andi Gutmans  PHP 4 (2000) : Trợ thành một thành phần độc lập cho các webserver. Parse đổi tên thành Zend Engine. Bổ sung các tính năng bảo mật cho PHP  PHP 5 (2005) : Bổ sung Zend Engine II hỗ trợ lập trình HĐT, XML, SOAP cho Web Services, SQLite  Phiên bản mới nhất của PHP là version PHP 5.2.4 (www.php.net)
  • 5. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Giới thiệu về PHP – PHP là gì ?  PHP viết tắt của PHP Hypertext Preprocessor  Là ngôn ngữ server-side script, tương tự như ASP, JSP, … thực thi ở phía WebServer  Tập tin PHP có phần mở rộng là .php  Cú pháp ngôn ngữ giống ngôn ngữ C & Perl Ưu điểm PHP ?
  • 6. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Giới thiệu về PHP – Ưu điểm 1  PHP được sử dụng làm – Server Side Scripting – CommandLine Scripting (cron – Linux, Task Scheduler – Windows, Text Processing) – Xây dựng ứng Desktop – PHP GTK
  • 7. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Giới thiệu về PHP – Ưu điểm 2  Đa môi trường (Multi-Platform) – Web Servers: Apache, Microsoft IIS, Caudium, Netscape Enterprise Server – Hệ điều hành: UNIX (HP-UX, OpenBSD, Solaris, Linux), Mac OSX, Windows NT/98/2000/XP/2003/vista – Hệ QTCSDL: Adabas D, dBase,Empress, FilePro (read-only), Hyperwave, IBM DB2, Informix, Ingres, InterBase, FrontBase, mSQL, Direct MS-SQL, MySQL, ODBC, Oracle (OCI7 and OCI8), Ovrimos, PostgreSQL, SQLite, Solid, Sybase, Velocis,Unix dbm
  • 8. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Giới thiệu về PHP – Ưu điểm 3  Miễn phí PHP Software Free Platform Free (Linux) Development Tools Free (PHP Coder, jEdit, …)
  • 9. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Giới thiệu về PHP – Ưu điểm 4  Được sử dụng rộng rãi trong môi trường phát triển web – 20,917,850 domains (chiếm hơn 32% tên miền website) – 1,224,183 IP addresses (04/2007 Netcraft Survey – http://www.php.net/usage.php)
  • 10. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Giới thiệu về PHP – Một số website lớn PHP at Yahoo! http://www.yahoo.com The Internet’s most trafficked site Portal Wiki Course Management System Portal Bulletin Board Content Management System Customer Relationship Management Help Desk e-Commerce Portal
  • 11. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Giới thiệu về PHP – Cần gì để chạy PHP ?  Download PHP – Download PHP for free here: http://www.php.net/downloads.php  Download MySQL Database – Download MySQL for free here: http://www.mysql.com/downloads/index.html  Download Apache Server – Download Apache for free here: http://httpd.apache.org/download.cgi  Download WAMP,LAMP
  • 12. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Nội dung  Giới thiệu PHP  Cơ chế hoạt động của WebServer  Cú pháp & Quy ước trong PHP
  • 13. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Cơ chế hoạt động của WebServer 2 Internet or Intranet www.example.com Webserver Apache or IIS ServerSide Script Parser (PHP, ASP, ..) Database Server Disk driver 3 45 67
  • 14. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Cơ chế hoạt động của WebServer
  • 15. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Cơ chế hoạt động của WebServer  Parser.asp  Parser.php
  • 16. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Nội dung  Giới thiệu PHP  Cơ chế hoạt động của WebServer  Cú pháp & Quy ước trong PHP
  • 17. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Cú pháp & Quy ước trong PHP  Quy ước  Khai báo biến  Kiểu dữ liệu  Toán tử  Cấu trúc điều khiển  Hàm  Lớp đối tượng
  • 18. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Quy ước  Mã lệnh PHP được đặt trong các cặp thẻ sau : Thẻ mở Thẻ đóng <? ?> <?php ?> <script language="php"> <script>
  • 19. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Quy ước  Tất cả các câu lệnh php đều cách nhau bởi dấu “;”  Không phân biệt khoảng trắng, Tab, xuống dòng trong câu lệnh <?php print "Hello"; print " World!"; ?> <?php Print “Hello” ; print “ World!”; ?>  Ghi chú : Theo cú pháp ghi chú của C++ & Perl // Đây là ghi chú # Đây là ghi chú /* Đây là ghi chú nhiều dòng*/
  • 20. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Cú pháp & Quy ước trong PHP  Quy ước  Khai báo biến  Kiểu dữ liệu  Toán tử  Cấu trúc điều khiển  Hàm  Lớp đối tượng
  • 21. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Khai báo biến $ten_bien = value;  Không khai báo kiểu dữ liệu  Biến tự động được khởi tạo ở lần đầu tiên gán giá trị cho biến  Tên biến : – Có thể bao gồm các Ký tự (A..Z, a..z), Ký số (0..9), _, $ – Không được bắt dầu bằng ký số (0..9) – Phân biệt chữ hoa – chữ thường Ví dụ : $size $my_drink_size $_drinks $drink4you $$2hot4u $drink-size x
  • 22. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Khai báo biến  Variable variables – Cho phép thay đổi tên biến – Ví dụ: $varname = “Bien_moi”; $$varname = “xyz”; // $Bien_moi = “xyz”  Hằng số - Constants – Ví dụ: define(“MY_CONST”, 10); echo MY_CONST;
  • 23. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Cú pháp & Quy ước trong PHP  Quy ước  Khai báo biến  Kiểu dữ liệu  Toán tử  Cấu trúc điều khiển  Hàm  Lớp đối tượng
  • 24. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Kiểu dữ liệu  boolean (bool)  integer (int)  double (float, real)  string  array  object 1 Biến trong PHP có thể lưu bất kỳ kiểu dữ liệu nào.
  • 25. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Kiểu dữ liệu (tt)  Chuyển kiểu dữ liệu – Cách 1 (automatic) $var = "100" + 15; $var = "100" + 15.0; $var = 39 . " Steps"; – Cách 2: (datatype) $var – Cách 3: settype($var, “datatype”) $var (int)$var (bool)$var (string)$var null 0 false “” true 1 “1” false 0 “” “6 feet” 6 true “foo” 0 true
  • 26. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Kiểu dữ liệu (tt)  Kiểm tra kiểu dữ liệu gettype is_string isset is_integer is_array unset is_double is_object empty Ví dụ: $var = "test"; if (isset($var)) echo "Variable is Set"; if (empty($var)) echo "Variable is Empty";
  • 27. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Kiểu số - int, float  Một số hàm xử lý số – abs pow decbin srand(seed) – ceil sqrt bindec rand – floor log dechex rand(min, max) – round log10 hexdec …  Ví dụ // Phát sinh một “mầm” ngẫu nhiên $seed = (float) microtime( ) * 100000000; // Khởi tạo bộ phát sinh số ngẫu nhiên srand($seed); // In con số ngẫu nhiên print rand(); // Giá trị ngẫu nhiên từ 0 đến getmaxrand( ) print rand(1, 6); // Giá trị ngẫu nhiên từ 1 đến 6
  • 28. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Kiểu chuỗi - string  Toán tử nối chuỗi : dấu chấm . $s = “Hello” . “ World”; // $s = “Hello World”  Phân biệt dấu nháy đơn và nháy kép $user = “Bill”; print „Hi $user‟; // Hi $user print “Hi $user”; // Hi Bill print „Hi‟ . $user; // ???? print „Hi‟ . „$user‟; // ????  Một số hàm xử lý chuỗi – printf trim strtolower – str_pad str_replace strtoupper – strlen substr strcasecmp – …
  • 29. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Ví dụ <? $tax = 0.075; printf('The tax costs $%.2f', $tax); $zip = '6520'; printf("ZIP is %05d”, $zip); $min = -40; $max = 40; printf("The computer can operate between %+d and %+d degrees Celsius.", $min, $max); ?>
  • 30. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Ví dụ <? echo “<pre>” // Print a heading echo str_pad(“Dramatis Personae", 50, " ", STR_PAD_BOTH) . “n"; // Print an index line echo str_pad(“DUNCAN, king of Scotland”, 30, ".") . str_pad(“Larry”, 20, ".", STR_PAD_LEFT) . “n"; echo “</pre>” ?>
  • 31. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Mảng - array  Numbered array $words = array("Web", "Database", "Applications"); echo $words[0]; $numbers = array(1=>“one”,“two”,“three”, "four"); echo $numbers[1];  Associated array $array = array("first"=>1, "second"=>2, "third"=>3); echo $array["second"];
  • 32. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Mảng - array  Một số hàm xử lý trên mảng – Count in_array sort asort ksort usort – min array_reverse rsort arsort krsprt uasort – max uksort  Ví dụ: $dinner = array( 'Sweet Corn and Asparagus', 'Lemon Chicken', 'Braised Bamboo Fungus'); sort($dinner); print "I want $dinner[0] and $dinner[1]."; $dishes = count($dinner); print $dishes;
  • 33. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Mảng - array  Một số hàm liên quan đến mảng – reset(array) – array_push(array, elements) : Thêm elements vào cuối mảng – array_pop(array) : Lấy phần tử cuối ra khỏi mảng – array_unshift(array, elements) : Thêm elements vào đầu mảng – array_shift(array) : Lấy phần tử đầu ra khỏi mảng – array_merge(array, array) : kết 2 mảng lại và trả ra mảng mới – shuffle(array) : Sort random mảng – sort(array, flag) : flag = {sort_regular, sort_numeric, sort_string, sort_locale_string}
  • 34. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Cú pháp & Quy ước trong PHP  Quy ước  Khai báo biến  Kiểu dữ liệu  Toán tử  Cấu trúc điều khiển  Hàm  Lớp đối tượng
  • 35. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Toán tử Loại Toán tử Ghi chú new . [ ] ( ) Toán học + - * / % ++ -- So sánh < > <= >= != == === !== Luận lý && || ?: , Xử lý bit ! ~ << >> >>> AND OR XOR Gán = += -= *= /= %= >>= <<= &= |= ^= .= Ép kiểu (kiểu dữ liệu) (int) (double) (string)…
  • 36. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Cú pháp & Quy ước trong PHP  Quy ước  Khai báo biến  Kiểu dữ liệu  Toán tử  Cấu trúc điều khiển  Hàm  Lớp đối tượng
  • 37. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Cấu trúc điều khiển  Điều kiện if  Điều khiển switch  Vòng lặp for  Vòng lặp while  Vòng lặp do.. While  Vòng lặp foreach  Từ khóa break, continue
  • 38. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Điều kiện if if (condition) { statement[s] if true } else (condition) { statement[s] if false } Ví dụ: $x = 5; if ($x < 4) echo “$x is less than 4”; else print „$x isn‟t less than 4‟; $x isn’t less than 4
  • 39. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Điều khiển switch switch (expression) { case label : statementlist break; case label : statementlist break; ... default : statementlist } Ví dụ: $menu = 3; switch ($menu){ case 1: echo "You picked one"; break; case 2: echo "You picked two"; break; case 3: echo "You picked three"; case 4: echo "You picked four"; break; default: echo "You picked another option"; } You picked three You picked four
  • 40. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Vòng lặp for for ([initial expression]; [condition]; [update expression]) { statement[s] inside loop }  Ví dụ: print “<select>”; for ($i = 1; $i <= 12; $i++) { print “<option>$i</option>”; } print “</select>”;
  • 41. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Vòng lặp while, do…while while (expression) { statements } do { statements }while (expression); Ví dụ: $i = 1; $j = 9; while ($i <= 10) { $temp = $i * $j; print “$j * $i = $temp<br>”; $i++; }
  • 42. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Vòng lặp foreach foreach (array as variable) { statements } Ví dụ: $meal = array('breakfast' => 'Walnut Bun', 'lunch' => 'Cashew Nuts and White Mushrooms', 'dinner' => 'Eggplant with Chili Sauce'); print "<table border=„1‟>n"; foreach ($meal as $key => $value) { print "<tr><td>$key</td><td>$value</td></tr>n"; } print '</table>';
  • 43. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Cú pháp & Quy ước trong PHP  Quy ước  Khai báo biến  Kiểu dữ liệu  Toán tử  Cấu trúc điều khiển  Hàm  Lớp đối tượng
  • 44. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Hàm - function function functionName ([parameter1]...[,parameterN]) { statement[s] ; } function functionName ([parameter1]...[,parameterN]) { statement[s] ; return ….. ; }
  • 45. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Hàm – Phạm vi biến <?php function doublevalue($var=5) { global $temp; $temp = $var * 2; } $temp = 5; doublevalue(); echo "$temp is: $temp"; ?> $temp = 5 $temp = 10
  • 46. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Hàm – Tham trị vs Tham biến <?php function doublevalue( $var) { $var = $var * 2; } $variable = 5; doublevalue($variable); echo "$variable is: $variable"; ?> $variable = 5 $variable =10 &
  • 47. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Hàm – include & require // functions.inc <?php function bold($string) { echo "<b>" . $string . "</b>n"; } ?> // index.php <html> <head> <title>Simple Function Call</title> </head> <body bgcolor="#ffffff"> <? include "functions.inc"; bold("this is bold"); $myString = "this is bold"; bold($myString); ?> </body></html> require "functions.inc";
  • 48. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Cú pháp & Quy ước trong PHP  Quy ước  Khai báo biến  Kiểu dữ liệu  Toán tử  Cấu trúc điều khiển  Hàm  Lớp đối tượng
  • 49. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Lớp đối tượng - class class class_name() [extends superclass_name] { var $attribute; … function method_name() { $this->attribute = …; } … } $a = new class_name(…);
  • 50. Lập trình và Thiết kế Web 1 – Bài 7 : PHP Cơ bản © 2007 Khoa CNTT - ĐHKHTN Lớp đối tượng - class  Ví dụ: class Counter { var $count = 0; var $startPoint = 0; function increment( ) { $this->count++; } } $aCounter = new Counter; $aCounter->increment( ); echo $aCounter->count; // prints 1 $aCounter->count = 101;