php入门基础

来源:互联网 发布:数据核查计划 编辑:程序博客网 时间:2024/05/17 02:03
1、双引号注意
1--字符串中会显示变量的内容
2--符串如需双引号必须以\”代替双引号
例如:echo“\”php\" is  a good program language.";
显示 “ php” is a good program language.

2、单引号注意
1--单引号中的变量不会显示变量的内容
echo '2:msg变量的内容是$msg<br>';
输出为
2:msg变量的内容是$msg
2--字符串中如需单引号必须以‘\’代替单引号,例如echo '|\'  || be back' ;
显示 |' ||be back

3、NULL类型
NULL是一个比较特殊的类型。一个变量如果被设定成NULL就表示这个变量里没有任何的值。
有三种情况会被认为变量值为NUll;
$n1=NULL;//直接赋值为null;
unset($n2);//将原来变量的值重置
$n3;//只声明了变量,但没有赋值
echo $n1;
echo $n2;
echo $n3;
说明:
$n1直接赋值为NULL;所以$n1为NULL.
unset()函数会清除变量的内容,所以$n2为NULL.
$n3没有任何的赋值和预先的处理,所以$n3的内容也为null;
因此上面的例子中3行echo都不会有任何的输出


4、数组和资源类型
1--数组,索引是从0开始的
用array()语言结构来新建一个数组。
例子:
$user=array("zhangsan","lisi");
$age=array(14,13,17);

获取echo $user[i];
------------------------------
会出现警告
$A[0]=10;


$A[1]=20;
$A[3]=20;
2--资源类型
Resources类型是一种特殊的数据类型,不同于之前的数据类型,资源类型变量是负责维持与外部资源的联系。例如开启的一个文件、数据库连接、图像等等。
    资源类型变量不可以直接操作,如果需要操作资源类型变量则必须通过特殊的函数才可以操作。
    例如:
   MySQL对PHP来说是一个外部资源,因此当PHP需要操作数据库时就必须通过PHP中的MySQL函数来操作。
   $m=mysql_connect('localhost',‘root’,‘123456’);
3、赋值运算符号、递增、递减运算符

4、比较运算符号

  5、位运算符号

特殊:
$a-$b  是01为1


6、字符串
通过          .        来连接字符串
$A="SS";
$B=$A."ss";
7、foreach循环
例子
格式1:

<?php
$ints=array(1,2,1,2);
foreach($ints as $intx){
 echo $intx;
}
?>
结果:
格式二:

<?php
$ints=array(1,2,1,2);
echo "<br>";
foreach($ints as $key => $values){
 echo "<br>$key=>$values";
}
?>
结果:
0=>1
1=>2
3=>2
重要点函数:


不区分函数名大小写
例子:
<?php
function hello($name,){  //自定义函数
echo "你好".$name;
}
hello("张三"); //调用函数
?>
结果:
你好张三

函数默认参数:

一个函数有多个参数在调用时候没有传入,就会调用默认的值
例子:
<?php
function hello($name="张三"){
  //自定义函数
echo "你好".$name;
}
hello();
//调用函数
?>
----------------
结果:
你好张三
-----------------
分析:
由于调用时候没有传入参数,所以自动调用默认的值,如果没有设置默认的值那么就会报错。
------------------------------------------------------
注意点:函数参数默认值必须遵循从右边到左边的原则,避免混淆。

错误写法:

函数返回参数写法:(与java 和c不同)
<?php
function hello($name="张三"){
  //自定义函数
return "你好".$name;
//使用时候直接return就可以了,不用定义返回参数的类型。因为php是弱类型语言
}
echo hello();
//调用函数
?>
结果:你好张三

全局变量和局部变量
在函数中的变量都是局部变量,它们只能在函数内部使用
在全php 中页面定义的变量为全局变量。全局变量在甚至包含它的页面中也可以使用。
但是全局变量在函数中不可以直接使用,在函数中使用全局变量可以函数内部声明变量为全局变量,
声明变量为全局变量方法有2种:
1、Global声明
<?php
echo "<p>全局变量和局部变量</p>";
$n=8;
$m=100;
function hello2(){
global $n;
$n=10;
global $m;
$m=11;
}
echo "$n+$m<br>";
hello2();
echo "$n+$m";
?>
结果:
8+100
10+11
2、GLOBALS数组声明
利用$GLOBALS数组。数组中以变量名称作为 索引(index),就可以取得全局变量值。例如:$GLOBALS["A"]就是取得$A的值。
<?php
function MyFunction(){
   $GLOBALS["C"]=$GLOBALS["A"]+$GLOBALS["B"];
   
}
$A=1;
$B=2;
$C=0;
MyFunction();
echo "\$A=$A,\$B=$B,\$C=$C";
?>
超级全局变量(super global)
php中许多预定义变量都是“超级全局的”,这意味着它们在一个脚本的全部作用域都可以用。在函数或方法中无需执行global¥variable;就可以访问它们:
$GLOBALS-     目前程序代码范围中有效的变量。
$_SERVER-      和服务器有关的变量;
$_GET-            利用HTTPGET方式传回的变量
$_POST-         利用HTTP POST方方式传回的变量
$_COOKIE-     利用HTTP COOKIE 方式传回的变量
$_FILES-         上传文件时的变量
$_ENV-          环境变量。
$_REQUEST-  读取任何一种用户输入方式的变量
$_SESSION-   读取已注册的SESSION变量
常量
就是一经定义后不会因为程序的执行而改变其内容值,这种形式我们称之为变量。
php中常量分为默认常量自定义变量
自定义常量时可以使用define()函数来定义。define()的格式如下:
define(常量名称,常量值,[case_insensitive])
第一个参数是设定变量的名称,第二个参数是设定常量的值,第三个参数用于定义是否区分大小写:1-不区分,0-区分。
常量的值仅允许标量和null;
标量类型是imteger、float、string或者boolean。
常量名除了应该遵循变量名的规则外,一般我们会把常量名定义成全部大写。
注意,常量名不需要$符号。
<?php
define ("HELLO","hello"); //定义常量
echo HELLO; //直接使用常量
echo constant("HELLO");//通过constant()函数使用常量
魔术常量


php输出函数
函数可以理解为一个有效的php代码集合。通过函数内部的代码,构建一个能表达或处理数据的语句体。而通过这个语句体,可以简单、快速的处理相同的事务或数据。php为用户提供了丰富的系统函数,使用户可以使用简单的代码,完成复杂的工作。除此之外,php允许用户自定义函数。


------------------------------------------------
<?php
$arrays=array("a","b");
print_r($arrays);
?>
结果:输出
Array ( [0] => a [1] => b )
heredoc和nowdoc技术
重点:heredoc会解析变量
$he=100;
echo <<<here
$he
here;
结果:100;


---------------------
重点:nowdoc不会解析变量
$he=100;
echo <<<nowdoc 
$he
nowdoc;
结果:
$he

------------------------------------------------------------------------------
php字符串函数
2中表达方式:
$tr='uuuuu';
$td='yyyy';
------------------------------------------------------------
strlen(string) 取得字符串长度,返回字符串拥有多少个字符
strtolower(string)将字符串的英文字母转换为大写
stroupper(string)将字符串的英文字母转换成大写字母
trim(string)删除字符串前后端的字符串
ltrim(string)删除字符串开头的空格符
rtrim(string)删除字符串结尾的空格符
chop(string)同rtrim()函数
lcfirst(string)将字符串的首字母转换成小写
ucfirst(string)字符串的首字母转换成大写
ucwords(string)将字符串中每个单词的首字母转换成大写
str_pad(string,pad_length,[pad_string],[pad_type]);
用一个字符串string填充另一个指定字符串pad_string到指定长度pad_length
-----------------------------------------------
用于字符串和子字符串之间的搜索、比较等操作。
函数
说明
strpos(string,string [,int])
返回第2个参数字符串在第1个参数中第1次搜索到的搜引位置,如有第3个参数是指定开始搜索的位置,以0开始,没有找到会返回false
strrpos(string,string)
返回从最后一个字符开始反向搜索第2个参数字符串在第1个参数中第1次出现的索引位置,以0开始,没有找到会返回false
strstr(string,string[,bool]$before_needle=fasle])
返回第2个参数字符串在第1个参数中第1次搜索到的位置到结束的子字符串,如果没有找到会返回fasle,比较时会区分英文大小写。如果$before_needle为true,返回第二个参数之前的字符串stristr(string,string[,bool $before_needle = false])返回第2个参数字符串在第1个参数中第1次搜索到的位置到结束的子字符串,如果没有找到会返回false,比较时并不会区分英文大小写
strchr(string,string)
同strstr()函数
strrchr(string,string)
返回从最后一个字符串反向搜索第2个参数字符串在第1个参数中第1次出现的位置到结束的子字符串,没有找到会返回false


-------------------------------------------------------------------------------------------------------
字符串和子字符串的函数,以及将字符串按照一定的规则转换成数组,或者将数组转换成字符串的函数。
函数
说明
chr(int)
取得参数int的ASCII码字符
substr(string,int[,int])
从第1个参数字符串的第2个参数int开始取出剩下字符串的字符串,如有第3个参数则是取出的长度
substr_count(string,string)
计算第2个参数字符串的第1个参数出现的次数
substr_replace(string,string,int[,int])
在第1个参数字符串中的第3个参数位置开始取代成第2个参数的字符串,如有第4个int参数则是取代长度
strrev(string)
返回参数字符串的反转字符串,例如:“username”反转成“”
str_repeat(string,int)
重复第1个参数字符串,一共重复第2个参数的次数
explode(string ,string[,int])
返回第2个参数字符串中,以第1个参数分割成元素的数组,如有第3个参数则是最大分割的数组元素数
implode(string,array)
将第2个参数的数组元素使用第一个参数的字符串链接起来php字符串比较函数
strcmp(string,string)
比较2个参数字符串的内容,返回值是整数,0表示相等,<0 表示第2个参数的字符串比较大,>0表示第2个参数的字符串比较小
strncmp(string,string,int)
只比较2个字符串前int个字符
strcasecmp(string,string)
忽略英文字母大小写,比较2个字符串的内容
strncasecmp(string,string,int)
忽略英文字母大小写,比较2个字符串的前int个字符
和web开发相关的字符串函数
在进行web开发时,有一些和HTML以及表单数据处理相关的字符串函数,如下表所示:
函数
说明
addslashes(string)
在单引号‘,双引号
stripslashes(string)
删除参数字符串中的反斜杠
htmlentities(string)
将字符串的字符转成HTML字符集
n12br(string)
将参数字符串中的\n字符转成HTML的换行标签<br>
strip_tags(string[,string $allowable_tags])
删除参数字符串的HTML标记,$allowable_tags可以指定不被删除的标记
示例:

--------------------------------------------------
数学函数


0 0