php基础语法入门教程
php教程基础语法入门教程
输出语句:
echo()、print().
eg:
echo 'hello','world';
注释:
#、//、/* */
变量:
必须以$开头,区分大小写,第一个字符必须是字母或下划线。
链接字符串:
两个字符串之间用点(.)连接
常量:
全部使用大写字母来命名常量,常量不会像变量那样使用美元符号。
define('name','value');
PHP运行时利用了几个预定义的常量,包括PHP_VERSION和PHP_OS(服务器的操作系统)
创建一个新的日期常量:
define('TODAY','February 3,2005');
echo 'Today is'.TODAY;
单引号和双引号的区别:
在单引号的字符按照字面意义进行处理,而在双引号中的值则将被解释。
处理HTML表单
<form action="" method="">
action后指示将其页面提交到指定的页面。
接受表单数据的PHP页面将把用户输入到这个表单的中的内容赋予一个称谓&_REQUEST['name']的特殊变量。其中要使用全拼大写,因为PHP对变量名区分大小写。name用于表示要提交的表单中指定的变量名。
1.php
<body>
<form action="2.php" method="get">
<fieldset><legend>Enter your information in the form below:</legend>
<p><b>name:</b><input type="text" name="name" size="20" maxlength="40"/></p>
<p><b>E-mail:</b><input type="text" name="email" size="40" maxlength="60"/></p>
<p><b>Gender:</b><input type="radio" name="gender" value="M"/>Male<input type="radio" name="gender" value="F"/>Female</p>
<p><b>Age:</b>
<select name="age">
<option value="0-29">Under 30</option>
<option value="30-60">Between 30 and 60</option>
<option value="60+"Over 60></option>
</select></p>
<p><b>Comments:</b><textarea name="comments" rows="3" cols="40"></textarea></p>
</fieldset>
<div align="center"><input type="submit" name="submit" value="Submit My Information"/></div>
</form>
</body>
运行如下:
2.php
当输入一些数据点submit时,会调用2.php:
<body>
<?php
$name=$_REQUEST['name'];
$email=$_REQUEST['email'];
$comments=$_REQUEST['comments'];
echo "<p>Thank you.<b>$name</b>.for the following comments:<br/><tt>$comments</tt></p>n";
?>
</body>
运行如下:
管理Magic Quotes(魔术引用):
对变量的值中的单引号和双引号进行转义。
如在上例中的comments中输入‘,则会显示'。
PHP中,有两类主要的Magic Quotes:magic_quotes_gpc,它适用于表单、URL和cookie数据(gpc代表get、post、cookie);magic_quotes_rentime,它适用于外部文件和数据库教程检索的数据。
如果在服务器上启用了Magic Quotes,则可以使用strips教程lashes()函数撤销它的作用。
$var=stripslashes($var);
这个函数将删除在$var中发现的任何反斜杠。在表单示例中,这具有把转义的提交字符串转变回其原来的未转义值的作用。
条件语句
If(isset($_REQUEST['gender']))
{
$gender=$_REQUEST['gender']
}
Else
{
$gender=NULL;
}
If($gender=='M')
{
...
}
验证表单数据
Isset()用于测试一个变量是否具有值(包括0、FALSE,或则一个空字符串,但不能是NULL)
但是使用此方法,若空字符串测试为TRUE,所以他不是验证HTML表单的文本输
入和文本框的有效方式。
empty()方法:
检查一个变量是否具有空值(empty):空字符串、0、NULL或FALSE。
eg:
if(!Empty(&_REQUEST['name']))
{
$name=stripslashes($_REQUEST['NAME'])
}
if($name)
{
…
}
要检测提交的值是否是数字,可使用is_numeric()函数。
可以使用strlen()函数来查看是否输入了0个以上的字符:
if(strlen($var)>0)
...
数组
数组可以构成一系列键-值对(key-value),其中每一对都是那个数组的一个项目或元素(element)。
PHP支持两种数组:索引数组(indexed array) 和联合数组(associative array),前者使用数字作为键,后者使用字符串作为键。索引数组的第一个索引开始于0,除非显示指定键。
数组遵守与任何其他变量相同的命名规则。
echo $ar[2];
echo $ar['MD']; --联合索引的键必须用单引号。
当数组使用字符串作为它的键时,输出格式为:
echo "{$array['IL']}";
当使用数字作为它的键时,输出格式为:
echo "$array[4]";
超全局数组:
$_GET、$_POST、$_SESSION、$_REQUEST、$_COOKIE等:
php使用$_GET来存储通过get方法发送到php脚本的所有变量和值。
$_POST存储使用post方法从HTML表单发送到php脚本的所有数据。
以及$_COOKIE,他们都是$_REQUEST的子集。
eg:
在前面的例子中,我们使用post获取所有元素,则可以直接用$_POST['name'],如:
$name=$_POST['name'];
创建数组:
1.一次向数组中添加一个元素:
$array[]="d";
$array['son']="BUJ";
2. 使用array()函数:
$arr=array('IA' => 'LH','MD' => 'MH');
不论是否显示地设置了键,都可以使用这个函数:
$arr=array('dd','asd');
如果设置了第一个具有数字键的值,则此后添加的值将具有递增的键:
$day=array(1=>'S','dd','ss') //$day[2]=dd,$day[3]=ss;
创建连续数字的数组,可以使用range()函数:
$ten=range(1,10);
访问数组:
foreach($array as $value)
{...}
foreach()循环将会迭代$array中的每个元素,并把每个元素的值赋予给$value变量。要访问键和值,可以使用:
foreach($array as $key=>value)
{
echo "The array value at $key is $value";
}
eg:
<form action="2.php" method="post">
<?php
$months=array(1=>'January','February','March');
$days=range(1,12);
$years=range(2000,2011);
echo '<select name="month">';
foreach($months as $key=>$value)
{
echo "<option value="$value">$value</option>n";
}
echo "</select>";
echo '<select name="days">';
foreach($days as $key=>$value)
{
echo "<option value="$value">$value</option>n";
}
echo "</select>";
echo '<select name="years">';
foreach($years as $key=>$value)
{
echo "<option value="$value">$value</option>n";
}
echo '</select>';
?>
要确定数组中的元素个数,可以使用count()或sizeof()函数:
$var =count($array);
从PHP4.1起,range()函数也可以创建连续字符的数组:
$var=range('a','z');
在foreach循环中不必使用名称$key和$value,但是,有些简写为$k和$v.
如果看到Invalid argument supplied for foreach()(为foreach()提供了无效的参数)出错消息,这意味
着你正尝试在不是数组的变量上使用foreach循环。
补充:Php教程,Php入门