1. Trang chủ
  2. » Công Nghệ Thông Tin

Tài liệu PHP and MySQL by Example- P2 pdf

50 569 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 50
Dung lượng 1,38 MB

Nội dung

Table 3.1. PHP Syntax and Constructs !"#$%&'( !"#$)*)$(+,-.%$-($./&+#0$1#%2##3$%"#$)*)$4.#3$%&'$ <?php $&30$%"#$)*)$+/4(#$ %&'$ ?> 5$!"#$+40#$1#%2##3$%"#(#$%24$%&'($-($2"&%$%"#$)*)$6407/#$.,4+#((#(5$ !"#$*!89$+40#$-($:7(%$/#;%$&($-($<(##$="&.%#,$>?$@A#%%-3'$B%&,%#0CD5 Instantiating a class: $cat = new Pet; // Create object with a constructor method $cat->set_name("Sneaky"); // Access object with an instance method echo "Your cat is rightly named ",$cat->get_name(), ".<br"; ?> $ )*)$&/(4$(7 4,%($-3"#,-%&3+#5$G$3#2$+/&(($+&3$1#$+,#&%#0$;,46$&3$#Q-(%-3'$ +/&((?$&$.&,#3%b+"-/0$,#/&%-43("-.$2"#,#$%"#$+"-/0$+/&(($-3"#,-%($.,4.#,%-#($&30$ 6#%"40($4;$%"#$.&,#3%$+/&(($&30$#Q%#30($4,$0#;-3#($%"#$;73+%-43&/-%H$4;$-%($ .&,#3%5$)*)$&/(4$"&($(.#+-&/$+43(%,7+%4,$&30$0#(+%,7+%4,$6#%"40($;4,$+,#&%-3'$ &30$0#(%,4H-3'$41:#+%(?$&($2#//$&($(.#+-&/$(#%%#,$&30$'#%%#,$6#%"40($<&/(4$ +&//#0$&++#(($4,$-3(%&3+#$6#%"40(D$;4,$&((-'3-3'$&30$,#%,-#L-3'$%"#$41:#+%c($ .,4.#,%-#(5$G3$#Q&6./#$%"&%$+,#&%#($&$3#2$ Laptop $+/&(($;,46$&$ Computer $+/&(($ -($("423$"#,#5 $ EFG8)9E $ =40#$P-#2I$$ <?php class computer { private $password; // Visible only within this class protected $userId; // Visible within this class and subclass public $printer; // Visible anywhere in the script function __construct() { // Parent's constructor print "In the parent constructor.\n<br />"; $this->userId = "willie"; // protected Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. Table 3.1. PHP Syntax and Constructs !"#$%&'( !"#$)*)$(+,-.%$-($./&+#0$1#%2##3$%"#$)*)$4.#3$%&'$ <?php $&30$%"#$)*)$+/4(#$ %&'$ ?> 5$!"#$+40#$1#%2##3$%"#(#$%24$%&'($-($2"&%$%"#$)*)$6407/#$.,4+#((#(5$ !"#$*!89$+40#$-($:7(%$/#;%$&($-($<(##$="&.%#,$>?$@A#%%-3'$B%&,%#0CD5 $this->password = "urAok5"; // private } function setUserId($userId){ $this->userId=$userId; } function getUserId() { return $this->userId; } private function setPassword($password){ // private method $this->password=$password; } private function getPassword(){ return $this->password; } } class Laptop extends Computer{ // Child/derived/subclass public $brand; public $weight; private $password="LetMeIn2"; function __construct($brand,$weight){ // Subclass constructor parent::__construct(); // Call to parent's constructor echo "Child constructor just called.\n<br />"; $this->brand=$brand; // new properties for the child $this->weight=$weight; } } function __destruct(){ echo "$this being destroyed\n"; } function setPassword($password){ $this->password=$password; } function getPassword(){ return $this->password; } } Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. Table 3.1. PHP Syntax and Constructs !"#$%&'( !"#$)*)$(+,-.%$-($./&+#0$1#%2##3$%"#$)*)$4.#3$%&'$ <?php $&30$%"#$)*)$+/4(#$ %&'$ ?> 5$!"#$+40#$1#%2##3$%"#(#$%24$%&'($-($2"&%$%"#$)*)$6407/#$.,4+#((#(5$ !"#$*!89$+40#$-($:7(%$/#;%$&($-($<(##$="&.%#,$>?$@A#%%-3'$B%&,%#0CD5 // Class user $pc=new Computer(); // Create two new objects $portable = new Laptop(); $portable->setPassword("letmein2"); . ]-/#( )*)$+46#($2-%"$&$(#%$4;$17-/%S-3$;73+%-43($%"&%$&//42$H47$%4$24,U$2-%"$;-/#(5$ d47$+&3$-3+/70#$#Q%#,3&/$;-/#($2-%"$%"#$ require $&30$ include $(%&%#6#3%(5$!"#$ -3+/70#0$;-/#($+&3$+43(-(%$4;$)*)?$*!89?$F89?$%#Q%?$&30$(4$435$!"#$,#K7#(%#0$ ;-/#c($+43%#3%($,#./&+#$%"#$/-3#$+43%&-3-3'$%"#$24,0$ require $4,$ include 5 $ EFG8)9E $ !4$-3+/70#$&$;-/#I$$ // replaces instances of require with the contents of file require("copyright.inc"); // replaces only first instance of require with contents of file require_once("header.inc"); // same as replace but happens only during program execution include("disclaimer.inc"); // happens only once during program execution include_once("title.inc"); $ !4$4.#3$&$;-/#$;4,$,#&0-3'?$2,-%-3'?$& #30-3'?$&30$(4$43?$%"#$;-/#3&6#$67(%$1#$ &((-'3#0$%4$&$;-/#"&30/#5$!"#$;4//42-3'$-($&$/-(%$4;$(46#$4;$%"#$1&(-+$;73+%-43($ ;4,$4.#3-3'?$+/4(-3'?$,#&0-3'?$&30$2,-%-3'$%4$&$;-/#5 $ EFG8)9EB $ !4$4.#3$&$;-/#I$ =40#$P-#2I$ // Opens "filename" for reading $filehandle = fopen("filename", "r"); // Opens "filename" for writing $filehandle = fopen("filename", "w"); // Opens "filename" for binary writing Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. Table 3.1. PHP Syntax and Constructs !"#$%&'( !"#$)*)$(+,-.%$-($./&+#0$1#%2##3$%"#$)*)$4.#3$%&'$ <?php $&30$%"#$)*)$+/4(#$ %&'$ ?> 5$!"#$+40#$1#%2##3$%"#(#$%24$%&'($-($2"&%$%"#$)*)$6407/#$.,4+#((#(5$ !"#$*!89$+40#$-($:7(%$/#;%$&($-($<(##$="&.%#,$>?$@A#%%-3'$B%&,%#0CD5 $filehandle = fopen("filename", "wb"); To close a file: fclose($filehandle); To read from a file: // Reads a line from file attached to $filehandle $string = fgets($filehandle); // Reads a character from file attached to $filehandle $char = fgetc($filehandle); // Reads chunk of bytes from file attached to $filehandle $text = fread($filehandle, $bytes ); // Reads entire contents from "filename" $text = file_get_contents("filename"); To write to a file: // Writes $string to $filehandle fwrite($filehandle, $string); // Writes $string to "filename" file_put_contents("filename", $string); e#'7/&,$ #Q.,#((-43( )*)$(7 4,%($.&%%#,3$6&%+"-3'$2-%"$,#'7/&,$#Q.,#((-43($&30$,#'7/&,$ #Q.,#((-43$6#%&+"&,&+%#,($<(##$!&1/#$f5>D5$!"#$ pcre $<)#,/$(%H/#D$;73+%-43($&,#$ 7(#0$%4$%#(%$2"#%"#,$&$%#Q%$(%,-3'$6&%+"#($&$.&%%#,35 $ EFG8)9EB $ =40#$P-#2I$ // $result is 1, $matches contains needle $result = preg_match("/needle/", "looking for a needle in a haystack", $matches); // Regular expression metacharacters if ( preg_match("/^[Nn] dle/", "Needle in a haystack" )){ echo "Found match.\n"; } // $new_array contains: normal, mama, man $new_array = preg_grep("/ma/", array("normal", "mama", "man","plan")); // $new_array contains: plan $new_array = Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. Table 3.1. PHP Syntax and Constructs !"#$%&'( !"#$)*)$(+,-.%$-($./&+#0$1#%2##3$%"#$)*)$4.#3$%&'$ <?php $&30$%"#$)*)$+/4(#$ %&'$ ?> 5$!"#$+40#$1#%2##3$%"#(#$%24$%&'($-($2"&%$%"#$)*)$6407/#$.,4+#((#(5$ !"#$*!89$+40#$-($:7(%$/#;%$&($-($<(##$="&.%#,$>?$@A#%%-3'$B%&,%#0CD5 preg_grep("/ma/",array("normal","mama","man", "plan"),PREG_GREP_INVERT); // $new_string: "I am feeling upbeat, upbeat, upbeat." $new_string = preg_replace("/blue/", "upbeat", "I am feeling blue, blue, blue."); // $new_string: "I am feeling upbeat, blue, blue" $new_string = preg_replace("/blue/", "upbeat", "I am feeling blue, blue, blue.",1); // $new_string: "I am feeling upbeat, upbeat. $new_string = preg_replace("/blue/i", "upbeat", "I am feeling BLue, BLUE."); // $new_string: "War and Peace" $new_string = preg_replace("/(Peace) and (War)/i", "$2 and $1", "Peace and War"); // $new_string: "He gave me 42 dollars." $new_string = preg_replace("/5/e", "6*7", "He gave me 5 dollars.")e; $ $ $ $ $ $ Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. Table 3.2. Some Regular Expression Metacharacters Metacharacter What)It)Does ^ 8&%+"#($&%$%"#$1#'-33-3'$4;$&$/-3# $ 8&%+"#($&%$%"#$#30$4;$&$/-3# a.c 8&%+"#($&3$ a ?$&3H$(-3'/#$+"&,&+%#,?$&30$&$ c [abc] 8&%+"#($&3$ a $4,$ b $4,$ c [^abc] 8&%+"#($&$+"&,&+%#,$%"&%$-($34%$&3$ a ?$4,$ b ?$4,$ c [0-9] 8&%+"#($43#$0-'-%$1#%2##3$ 0 $&30$ 9 ab*c 8&%+"#($&3$ a ?$;4//42#0$1H$Y#,4$4,$64,#$4;$%"#$/#%%#,$ b ?$&30$&$ c ab+c 8&%+"#($&3$ a ?$;4//42#0$1H$43#$4,$64,#$4;$%"#$/#%%#,$ b ?$&30$&$ c ab?c 8&%+"#($&3$ a ?$;4//42#0$1H$Y#,4$4,$43#$ b ?$&30$&$ c $ At the end of each section, you are given the chapter number that describes the particular construct and a short, fully functional PHP example designed to illustrate how that constuct is used. 3.1.2. A Note to Nonprogrammers If you are not familiar with programming, skip this chapter and go to Chapter 4, “The Building Blocks.” You might want to refer to this chapter later for a quick reference. 3.1.3. PHP Syntax and Constructs 3.2. Chapter Summary This chapter was provided for programmers who need a quick peek at what PHP looks like, its general syntax, and programming constructs. Later, this chapter can serve as a tutorial to refresh your memory without having to search through the index to find what you are looking for. 3.2.1. What’s Next? In Chapter 4, “The Building Blocks,” we discuss the basic building blocks of all languages: data types. You learn how to work with different types of numbers, strings, booleans, and more. You also learn how to define and display variables, how to use variables, how PHP deals with data coming in from HTML forms, and how to define constants. $ Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. Chapter 4. The Building Blocks: Data Types, Literals, Variables, and Constants “One man’s constant is another man’s variable.” —Alan Perlis 4.1. Data Types A program can do many things, including perform calculations, sort names, prepare phone lists, display images, play chess, ad infinitum. To do anything, however, the program works with the data that is given to it. Data types specify what kind of data, such as numbers and characters, can be stored and manipulated within a program. PHP supports a number of fundamental basic data types, such as integers, floats, and strings. Basic data types are the simplest building blocks of a program. They are called scalars and can be assigned a single literal value such as a number, 5.7, or a string of characters, such as "hello", a date and time, or a boolean (true/false). See Figure 4.1. Figure 4.1. Scalars hold one value. ! PHP also supports composite data types, such as arrays and objects. Composite data types represent a collection of data, rather than a single value (see Figure 4.2). The composite data types are discussed in Chapter 8, “Arrays,” and Chapter 17, “Objects.” Figure 4.2. Arrays and objects hold multiple values. ! Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. The different types of data are commonly stored in variables. Examples of PHP variables are $num = 5 or $name = "John" where variables $num and $name are assigned an integer and a string, respectively. Variables hold values that can change throughout the program, whereas once a constant is defined, its value does not change. PHP_VERSION and PHP_OS are examples of predefined PHP constants. The use of PHP variables and constants is addressed in “Variables” on page 70 and “Constants” on page 99 of this chapter. PHP supports four core data types: • Integer • Float (also called double) • String • Boolean In addition to the four core data types, there are four other special types: • Null • Array • Object • Resources 4.1.1. Numeric Literals PHP supports both integers and floating-point numbers. See Example 4.1. • Integers— Integers are whole numbers and do not contain a decimal point; for example, 123 and –6. Integers can be expressed in decimal (base 10), octal (base 8), and hexadecimal (base 16), and are either positive or negative values. • Floating-point numbers— Floating-point numbers, also called doubles or reals, are fractional numbers such as 123.56 or –2.5. They must contain a decimal point or an exponent specifier, such as 1.3e–2. The letter “e” can be either upper or lowercase. PHP numbers can be very large (the size depends on your platform), but a precision of 14 decimal digits is a common value or (~1.8e 308 ). Example 4.1. 12345 integer 23.45 float .234E–2 float in scientific notation .234e+3 float in scientific notation 0x456fff integer in base 16, hexadecimal 0x456FFF integer in base 16, hexadecimal 0777 integer in base 8, octal Example 4.2. <html> <head><title>Printing Numbers</title> </head> <body bgcolor="lightblue"> <font face = "arial" size = '+1'> <?php print "The positive integer is <em><b>" . 5623 . " .</b></em><br />"; print "The negative integer is <em><b>" . -22 . ".</b></em><br />"; print "The floating point number is <em><b>" . 15.3 . " .</b></em><br />"; print "The number in scientfic notation is <em><b> " . 5e3 . " . </b></em><br />"; print "\tThe string is: <em><b>I can't help you!</em> </b><br />"; Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. ?> </body> </html> Figure 4.3. Output from Example 4.2. ! ! ! 4.1.2. String Literals and Quoting We introduce strings in this chapter but Chapter 6, “Strings,” provides a more comprehensive coverage. String literals are a row of characters enclosed in either double or single quotes. [1] The quotes must be matched. If the string starts with a single quote, it must end with a matching single quote; likewise if it starts with a double quote, it must end with a double quote. If a string of characters is enclosed in single quotes, the characters are treated literally (each of the characters represents itself). We can say the single quotes are the democratic quotes: All characters are treated equally. [1] PHP always null-terminates strings internally and keeps track of the length of the string. Double quotes do not treat all characters equally. If a string is enclosed in double quotes, most of the characters represent themselves, but dollar signs and backslashes have a special meaning as shown in the following examples. Single quotes can hide double quotes, and double quotes can hide single quotes: [2] [2] PHP recognizes editors that use straight quotes, such as vi or Notepad, but not editors that automatically transform straight quotes into curly quotes. "This is a string" 'This is another string' "This is also 'a string'" 'This is "a string"' ! An empty set of quotes is called the null string. If a number is enclosed in quotes, it is considered a string; for example, "5" is a string, whereas 5 is a number. Strings are called constants or literals. The string value "hello" is called a string constant or literal. To change a string requires replacing it with another string. Strings can contain escape sequences (a single character preceded with a backslash). Escape sequences cause a character to behave in a certain way; for example, a "\t" represents a tab and "\n" represents a newline. The backslash is also used for quoting a single character so that it will not be interpreted; for example, \$5.00 where the dollar sign in PHP is used to represent variables rather than money. \$5.00 could also be written as '$5' because single quotes protect all characters from interpretation. Here documents, also called here-docs, provide a way to create a block of text that simplifies writing strings containing lots of single quotes, double quotes, and variables (see Example 4.4). Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. Example 4.3. <html> <head><title>Quotes</title></head> <body bgcolor="lightblue"><font size='+1'> 1 <?php 2 $name = "Nancy"; // Setting a PHP variable print "<ol>"; 3 print "<li> $name is my friend.</li>"; // Double quotes 4 print '<li> $name is my neighbor.</li>'; // Single quotes 5 print "<li> I can't go with you.</li>"; // Nested quotes 6 print "<li> She cried, \"Help!\"</li>"; // Escaping quotes 7 print "<li> I need \$5.00.</li>"; // The backslash // quotes one character 8 print "<li> $name needs ". '$5.00 </li>'; // Nested quotes print "</ol>"; ?> </body> </html> Explanation " #$#!%&'(&)*!+,)&,+!-.&./ 0 $name !1+!)!#$#!2)&1)34./!5,!1+!)++1(6.7!,-.!+,&16(! "Nancy" /!8'9!:144!4.)&6!)44! )3'9,!2)&1)34.+!16!,-.!+.;,1'6!<=)&1)34.+>!'6!%)(.!?@/ A B-.6!)!+,&16(!1+!.6;4'+.7!:1,-16!7'934.!C9',.+D!,-.!#$#!16,.&%&.,.&!:144! +93+,1,9.!,-.!2)&1)34.!:1,-!1,+!2)49.E!F'&!.G)*%4.D! $name !:144!3.!&.%4);.7!:1,-! "Nancy" / H B-.6!)!+,&16(!1+!.6;4'+.7!16!+16(4.!C9',.+D!)44!;-)&);,.&+!)&.!,&.),.7!)+!41,.&)4+/! =)&1)34.!+93+,1,9,1'6!:144!6',!';;9&/ I J16(4.!C9',.+!;)6!3.!6.+,.7!:1,-16!7'934.!C9',.+!)67!21;.!2.&+)/ K L9',.+!;)6!3.!.+;)%.7!:1,-!)!3);M+4)+-!,'!*)M.!,-.*!41,.&)4!;-)&);,.&+!:1,-16! )!+,&16(/ ? N-.!7'44)&!+1(6!1+!.+;)%.7!F&'*!#$#!16,.&%&.,),1'6D!,-),!1+D!1+!,&.),.7!)+!)! 41,.&)4!;-)&);,.&/ O P!+,&16(!16!7'934.!C9',.+!1+!;'6;),.6),.7!,'!)!+,&16(!16!+16(4.!C9',.+/!Q9+,!)+! ,-.!3);M+4)+-!%&',.;,+!,-.!7'44)&!+1(6!F&'*!16,.&%&.,)1'6D!+'!7'!,-.!+16(4.! C9',.+/!R.*.*3.&D!;-)&);,.&+!16!+16(4.!C9',.+!)&.!)44!,&.),.7!)+!41,.&)4+E!,-),! 1+D!#$#!7'.+!6',!;'6+17.&!)6S!'F!,-.!.6;4'+.7!;-)&);,.&+!)+!+%.;1)4/!J !,-.! '9,%9,!16!T1(9&.!H/H/ Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. [...]... value NULL, and if a variable has been unset, it is considered to be NULL Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark Resource A resource is a special variable, holding a reference to an external resource such as a database object or file handler Resources are created and used by special functions File and database resources are defined by the PHP interpreter and are only... simple form and how PHP collects and stores the form information in variables Chapter 10, “More on PHP Forms,” provides a comprehensive discussion on HTML forms and introduces the special global arrays used to process them in your PHP scripts The php. ini File and register_globals Before getting started, there are some issues to be aware of based on the version of PHP you are using The PHP initialization... to get a full understanding of scope, including local variables, globals, superglobals, and static Global and Environment Variables Superglobal variables (see Table 4.4) are accessible everywhere within a script and within functions They are special variables provided by PHP to help you manage HTML forms, cookies, sessions, and files, and to get information about your environment and server Table 4.4... $husband 2 $son = & $husband; // Assign a reference to $son // Now $son is a reference or alias // for $husband They reference the same data 3 print "His wife calls him $husband, and his Mom calls him $son "; 4 $son = "Lazy"; // Assign a new value to $son; // $husband gets the same value 5 print "Now his wife and mother call him $son, $husband man."; ?> Please purchase PDF. .. defined by the PHP interpreter and are only accessible by functions provided by the interpreter (see Chapter 11, “Files and Directories,” and Chapter 15, PHP and MySQL Integration) The gettype() Function The gettype() built-in function returns a string to identify the data type of its argument The argument might be a variable, string, keyword, and so on You can use the gettype() function to check whether... string to a variable and later assign a numeric value PHP doesn’t care and at runtime, the PHP interpreter will convert the data to the correct type In Example 4.12, consider the following variable, initialized to the floating-point value of 5.5 In each successive statement, PHP will convert the type to the proper data type (see Table 4.3) Please purchase PDF Split-Merge on www.verypdf.com to remove this...  cannot  be  surrounded by  any  spaces,  comments,  or  other  text  The  final   delimiter  can  optionally  be  terminated  with  a  semicolon and  must  be  on  a  line by  itself 3   All  variable and  escape  sequences  will  be  interpreted  within  the  here  document Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark Example 4.4 1 2 3 4 5 6 7 8 < ?php $bgcolor="darkblue";...  $primary = color1; 4 PHP  expands  ${$primary}[a]  as  follows:   ${color1} First  evaluate  $primary  within  the  curly  braces   $color1 Remove  the  braces and  now  evaluate  $color1  resulting  in   "red"   The  color  of  the  font and  the  text  will  be  red  Next  time  through  the  loop,  the   count  will  go  up by  one  ($count = 2) and  the  $color2  will  be  "blue", and   finally...  4.11)   Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark Figure 4.11 Backquotes and UNIX Output from Example 4.9 Example 4.10 Backticks for Windows Command < ?php 1 $today =`date /T`; // Windows command 2 echo "Today is $today"; ?> Figure 4.12 Backquotes and Windows Output from... '$name lives in $state and earns $salary.'; $name lives in $state and earns $salary   The same strings are enclosed in double quotes: echo "$name lives in $state and earns \$salary."; Tom lives in New York and earns $80000 print "$name lives in $state and earns \$salary."; Tom lives in New York and earns $80000   Shortcut Tags There are several shortcuts you can use to embed PHP within the HTML portion . handler. Resources are created and used by special functions. File and database resources are defined by the PHP interpreter and are only accessible by. change. PHP_ VERSION and PHP_ OS are examples of predefined PHP constants. The use of PHP variables and constants is addressed in “Variables” on page 70 and

Ngày đăng: 24/12/2013, 03:17