【嘉兴东臣PHP】Apache php

   这周学习了php,在安装完配置环境后,下面是所学知识点:

一、php基础

关于PHP标识:

每一个PHP是以 <?php 开头 以 ?> 结尾

注意:php文件里是可以写HTML的。但是需要注意的是,不能写在PHP的范围内,也就是不能再<?php ?>内,只能在之外写。比如 <?php echo 123; ?> <h1>123</h1>

echo 是 PHP 输出函数。 关于PHP输出函数有以下几种:

1、echo  输出基础类型,如字符串 和 数字,bool等

2、print 同上,但是有返回值,1和0

3、printf 也是输出格式化字符串

4、print_r 输出集合类型,有一定规则。

5、var_dump 输出集合类型,没有规则

6 echo print 不会输出bool类型

PHP变量是以$符号标识的。

注意:变量只能以下划线_ 和大小写字母开头,在变量过程中,只能有下划线 大小写字母 以及 数字。不要有空格!运算符等!正确:$a $ab $_ab错误: $1a $a b

在PHP中有通配符,%s 代表是匹配字符串类型,%u %d %i 都是匹配整型  %f 代表是匹配浮点类型 %.2f 代表是匹配浮点类型 保留2个小数。

printf() 和 sprintf()的区别:

printf() 返回的是 字符串 和 长度。

sprintf() 返回的是只是格式化的字符串

如: sprintf("http://aiqiyi.com/%s", "寻龙诀");

变量赋值是指将一个变量的值给另一个变量。如:

$a = 10;

$b = $a;

$b = 20;

echo $a;//10

echo $b;//20

引用赋值是指将一个变量的内存地址给另一个变量,因为如果整个给内存地址的变量一旦发生改变,那么另一个变量立马改变。

$a = 10;

$b = &$a;

$b = 20;

echo $a; //20

echo $b; //20

PHP中字符串连接 不用+ 用 .

函数作用域

在PHP中,全局变量改变,通常不会影响到局部变量,除非你一定要去使用全局变量。那么请你一个关键字 叫做global。如:

$number = 1000;

funciton abc(){

     global $number;

     echo $number;

}

abc();

static 关键字一般用于静态变量,而静态变量的作用就是让这个变量在不使用的时候 不会被释放,而是长期保留。

PHP中 {}用于表示同时编译括号内的变量,如:

$a = 10 ; echo {$$a};


PHP中的数据类型:

整型、浮点型、布尔型、字符串

数组、对象、资源类型、NULL


单引号和双引号的区别:

双引用会进一步解析内部的变量定义,而单引号则会直接输出这个字符,因为理论上来说单引号快一些。


PHP中的数组、字典的关键字是array

如  $a = array(); //定义了一个空数组

$a = array( 1, 2, 3 ); //定义了一个数组有3个元素。

遍历数组,第一种方法,count为数组计数:

for( $i = 0 ; $i < count($a); $i++ ){

    echo $a[$i];

}

遍历数组,第二种方法,foreach:

foreach( $a as $key ){

   echo $key;//$key名字为变量名 随便定义

}


字典:$a = array( "name" => "abc", "a" => "b");

在php的字典中 key => value 的形式存在的。

遍历字典:

foreach( $a as $key => $value ){

      echo $key."-".$value;

}

二、php函数

   PHP函数非常强大

1、rand 随机数。rand(最小值,最大值)

2、array_rand 随机数组。提取数组中的任意一个元素。注意是提取下标array_rand(数组,提取数);

3、array_search 可以快速找到数组或者字典中的某个值,返回下标,如果没有找到返回的0或者false。

注意:这个函数因为会返回0,但是0在数组里是有下标的,因此判断的时候请用 恒等 === 

array_search( "查找的值", 集合 );

4、array_unique 给集合去重,如果发现重复的元素直接删除 注意:它会把重复的值全部删除,也就是的标会有不存在,因为建议用foreach 

5、unset(数组[下标]/字典[元素]) 移除集合里的某个键值

$arr = array( 1, 2, 3 );

如: unset( $arr[0] );

      isset(数组[下标]/字典[元素]) 判断某个下标或键值是否存在

6、die() 设置程序断点,用于程序调试

7、array_unshift 在集合头部插入一个或者多个单元。如:array_unshift( $arr , "a", "b" );

     array_push(数组,“”,“”) 在尾部插入一个或者多个元素。 也可以用 数组[ ] = 元素。

8、array_pop(数组) 删除集合最后一个元素。

9、array_shift (数组)删除集合第一个元素。

10、implode 将数组以特殊符号,链接成字符串。

11、explode 将字符串以特殊符号进行分割成数组。

12、洗牌: shuffle( 数组 ) 数组打乱,注意它会将原数组打乱。

三、php语法加强

 set_time_limit();用于php脚本的执行时间 同等于在php.ini中的max_execution_time 默认执行30秒。

如果要设置成执行无限秒 set_time_limit( 0 );

sleep();用于暂停的秒数

换行:\n 用于脚本  <br/> 用于网页

is_array($arr) 检测变量是否为数组

array_keys 返回集合的键

array_values 返回集合的值

in_array 判断集合中是否有某个值,如in_array( "a",$arr); 返回的是布尔值。

array_key_exists 判断数组中是否包含了某个键值,返回的是布尔值。

array_count_values 返回的是数组中,所有值出现的次数

在php中的变量比较,优先转化成有同一类型的变量,优先转化成整型,如:0 == "name" 那么优先转化"name" 为0 因此 它们是相等的。

字符串中,转化后如果判断是浮点则直接用浮点跟整型比较一次。

sort() 升序 rsort() 倒序

判断某个变量的数据类型用 is_类型

如:

is_string 判断字符串

is_int 判断整型

is_array 判断数组

is_float 判断浮点

转化类型函数:

intval

floatval

strval

// 通常这种情况下:浮点*整型(字符串等) 会有二进制的问题,

//因此,如果需要解决有2个渠道:

//1、在输出之前用strval函数。

//2、请用round函数,功能是四舍五入

注意:在PHP中“a”+/-/*/ “b” 都是需要转化成整型或者字符串类型运算的。

强制转化成整型一般都是从左往右查看,如果为数字则保留,其他的则直接为0 

如:10a 强制转化为 10  , a10 强制转化为 0 

empty() 一般用于判断集合是否为空。

如:if( empty($arr) ) echo "集合为空"; 

var_export 输出或返回一个变量的字符串表示

通过将函数的第二个参数设置为 TRUE,从而返回变量的表示。 

宏:define 相当于超级全局变量。

define( "参数名", 值);

如: define("A","Hello"); 

echo A; //注意这里不要加$;

@ 忽略警告或者错误。继续执行下面的

echo "Hello";

echo @(1/0); //加了@会自动忽略掉警告或者错误

echo "Hello";

整个程式输出的是Hello Hello;

魔术方法

__FILE__ 当前文件的路径

__LINE__ 定义的行数

__DIR__  当前文件的路径 不包括这个文件名

如:

define( "FPATH" , __FILE__  );

define( "Line" , __LINE__  );

define( "DIR1", __DIR__ );

$global 申请使用或者定义 全局变量。

$_SERVER 打印当前服务器的详细信息。

$_REQUEST 同时接收POST/GET方式请求

$_POST 接收POST方式请求

$_GET 接收GET方式请求

    global a://只是把当前的变量去引用了一起全局变量

    $GLOBALS //直接返回的是一个数组,打印的是全局申请变量的值,包括$_GET $_POST.

 //var_export( $GLOBALS );

四、文件操作

1、函数参数默认值

 在php中参数是有默认值的,如果某个参数不传值,那就直接执行默认值 如:function a( $a = 10 ){}

文件一般分有几种路径:

1、利用http访问的路径。

  一般用于webserver等网络访问某个文件。如果http://localhost/index.html 其实上就是访问你在webserver配置文件下设置的根目录下的index.html。如果你需要访问根目录下的某个文件夹里的文件,请在访问的时候,带上文件夹的名字访问。如:

http://localhost/文件夹名(不要中文)/index.html

2、利用file访问的路径。

  一般用于本地访问,file是指找到本地的某个文件夹里的文件。如:file://C://PHP/PHPWeb/jquery.1.8.0.js  

 注意:该种方法,一般用于简单的页面制作,布恩那个用于PHP开发和网络开发。

路径其实也分有两种表示方式:

1、绝对路径

  特指完整的路径 在file中为: file://c:/php/phpweb/index.html 。在http中引用某个文件为: www.baidu.com/dev/jquery.js

2、相对路径

  特指相对于当前目录下,所引用的那个文件的路径。如http下 引用某个文件  dev/jquery.js

2、json_encode 集合转化为json编码格式。

3、json_decode(集合,true) json转化为数组、字典格式,如果不加true 可能会转化为OBJECT 对象格式。

die( 输出语句 ); 断点

exit( 输出语句 );退出

4、文件操作

 1、is_writable 判断是否可写

  (file_exists 判断文件是否存在)

 2、fopen  打开一个文件

 3、fread  读取一个文件

 4、filesize  返回当前文件长度

 5、fwrite  写入一个文件

 6、fclose 关闭一个文件

1、判断文件是否可写

2、打开一个文件。

3、读或者写一个文件

4、关闭一个文件

fopen 参数详解

 r  read 只读

 w  写

 a  追加

 注意:写会覆盖!

总结:

        在学习php之前,安装配置环境就用了很久,在老黄的指导下一步一步的安装完,然后卸载自己重新安装一遍,了解了php的工作原理。php的语法很精简,看起来也是容易懂。练习还是一如既往的没有头绪,只能靠老黄的优秀代码增长自己。勤加练习,相信有一天会突破瓶颈的。

           

转载于:https://my.oschina.net/u/2545468/blog/600436

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值