?
PHP是一种脚本语言,不同于Java可以独立编译运行,PHP是嵌入在html中执行的。这一点有点像JavaScript。当执行一个PHP文件时,服务器会对文件中的php代码进行解析。但是PHP又和JavaScript不同,JavaScript是作用于客户端的脚本语言。而PHP是只作用于服务器的脚本语言。这一点上又比较像jsp,像Java。PHP的工作原理是当客户端访问一个PHP文件,服务器对它进行解析。PHP就会更具传来的数据,计算出应该返回的的html页面数据。如图1所示:
?
令我感到吃惊的是PHP居然是面向对象的编程语言。PHP的基本数据类型也有整型、浮点型、字符串、数组、对象、布尔型。
PHP是一种弱类型的编程语言,类似于JavaScript,它的变量不会锁定为一种特殊的格式。
PHP的变量书写格式是$var,前面得有一个美元符号,后面紧接着的是字母或者下划线,不能是数字。但是接着就可以用字母、数字、下划线的任意组合了。PHP是区分大小写的。
PHP的数组的创建格式是$list = array(1 = > ‘one’, 2 = > ‘two’, 3 = > ‘three’)。也可以直接$list = array(‘one’, ‘two’, ‘three’),但是这样前面的索引值是从0开始的。所以,PHP的数组是比较灵活的,可以自己设定索引值从1开始。更加灵活的是这个索引值不但可以是数字,还可以是字符串。所以,我个人觉得,PHP的数组其实更像一个Map,里面存储的是键值对。引用数组值的格式是:$数组名[索引值],例如$list[1]。
PHP中有几个特殊的变量$_POST,$_GET(必须是大写)。这两个变量的作用是当有一个客户端发来请求时,客户端发送过来的数据存放在这些变量里面。这其实是两个数组。顾名思义,$_POST对应客户端用post方法发来的数据。$_GET对应客户端用get方法发来的数据。$_POST和$_GET的使用方法是,$_POST[‘name’],这个name是指html标签中的name值。得到的是这个name相对应的value值。
?????? 简单测试:
一个html页面里面有几个链接,都指向同一个hello.php文件。当点击一个链接后,html会通过get方法将对应的数据传给指向的php文件。这个php文件再把接收到的value打印出来。
html链接代码:
?
<ul> <li><a href="hello.php?name=Michael">Michael</a></li> <li><a href="hello.php?name=Celia">Celia</a></li> <li><a href="hello.php?name=Jude">Jude</a></li> <li><a href="hello.php?name=Sophie">Sophie</a></li> </ul>?
?
对应的hello.php中部分代码:
?
<?php ini_set('display_errors', 1);//Let me learn from my mistakes! //error_reporting(E_ALL | E_STRICT);//Show all posible problems! //打印URL中的value值 //Say "Hello"" $name = $_GET[name]; print "<p>Hello, <span style=\"font-weight:bold\">$name</span></p>"; ?>?
?
? ? ? ?Html中提交数据经常使用form。PHP对form的操作也是这样的。form中使用get或者post方法,在php中有对应的$_GET,$_POST数组接受数据。
简单测试:
一个form
?
<form action="handle_form.php" method="post"> <p>Name:<select name="title"> <option value = "Mr.">Mr.</option> <option value = "Mrs.">Mrs.</option> <option value = "Ms.">Ms.</option> </select> <input type="text" name="name" size="20"/> </p> <p>Email Address: <input type="text" name="email" size="20"/></p> <p> Response: This is... <input type="radio" name="response" value="excellent"/> excellent <input type="radio" name="response" value="okey"/>okey <input type="radio" name="response" value="boring"/>boring </p> <p>Comments: <textarea name="comments" rows="3" cols="38"></textarea></p> <input type="submit" name="submit" value="Send My Feedback"/> </form>
?对应的php代码
?
<?php ini_set('display_errors', 1);//Let me learn from my mistakes! //This page receives the data from feedback.html. //It will receive: title, name, email, response, comments, and submit in $_POST. $title = $_POST['title']; $name = $_POST['name']; $response = $_POST['response']; $comments = $_POST['comments']; //Print the received data: print "<p>Thank you, $title $name, for your comments.</p> <p>You stated that you found this example to be '$response' and added: <br />$comments</p>"; ?>?
?
PHP学习网站:
http://www.zend.com/en/
http://www.php.net/
http://www.larryullman.com/
http://www.w3schools.com/
?
?
?
?
?
?