PHP 基本内容

1.PHP简介 :

        (1)PHP是一种服务器端编程语言,它在web服务器上运行。

        (2)Personal Home Pages —> PHP Hypertext Processor(PHP超文本处理器)

        (3)PHP能做什么:

  • PHP 能够生成动态页面内容
  • PHP 能够创建、打开、读取、写入、删除以及关闭服务器上的文件
  • PHP 能够接收表单数据
  • PHP 能够发送并取回 cookies
  • PHP 能够添加、删除、修改数据库中的数据
  • PHP 能够限制用户访问网站中的某些页面
  • PHP 能够对数据进行加密

        (4)PHP的安装:http://www.jianshu.com/p/24e60b39ef2b

2.常见开发工具及环境:

  • Zend Studio:商业版,Zend官方出品,基于eclipse
  • Eclipse with PDT:免费
  • Coda:商业版,针对Mac用户
  • NetBeans:免费,功能强大
  • PHP Storm:商业版 强烈推荐!
  • Aptana Studio:免费
  • PhpEd:商业版
  • Komodo IDE/Edit:IDE为商业版,Edit可免费使用
  • Adobe Dreamweaver:商业版

3.php的优势:

  • PHP 运行于各种平台(Windows, Linux, Unix, Mac OS X 等等)
  • PHP 兼容几乎所有服务器(Apache, IIS , Nginx等等)
  • PHP 支持多种数据库
  • PHP 是免费的。官方 PHP 资源下载:www.php.net
  • PHP 易于学习,并可高效地运行在服务器端

4.php变量:

    (1)php数据类型:

        (1.) 四种标量类型 :

         1.布尔类型 :只有true和false,两者不区分大小写。在php中,以下的计算结果为false:关键字false, 整型0, 浮点

            型0.0, 空字符串””和字符串”0”, 空数组, 空对象, NULL值.

            2.整型 :integer整数类型。八进制以0开头, 十六进制以0x开头, 二进制以0b开头. 注意:如果尝试将一个太大的整数

            存成整型时,它会自动转化为一个浮点数,使用is_int()函数可以检测是否是整数.

            3.浮点类型 :float小数类型。浮点型尽量不要进行==的比较

            4.字符串类型 :string,用单引号或者双引号括起来。变量在双引号中会被解析,在单引号中不会,并且双引号支持多种字

            符串转义.

        (2.) 两种符合类型:

         1.数组类型 :array(’name’ => ‘张三’)。

            2.对象类型 :object, 用new关键字初始化一个对象。

        (3.) 两种特殊类型 :

         1.资源类型 :保存了到外部资源的一个引用,通过专门的函数建立和使用,其他类型的值无法转为资源。使用

            is_resource()来判断是否是资源类型.

            2.NULL : 空值(同null)。使用is_null()判断是否为空

    (2)php输出语句:

        (1)使用echo输出普通变量 :echo $num;

        (2)使用print输出普通变量 : print $num;

        (3)使用print_r()输出数组 : print_r($a);

        (4)使用var_dump()输出数组 : var_dump($a);

        (5)使用var_export()输出数组 : var_export($a);

    (3)变量的变量:

        (1.) 通过$符号作为前缀,引用变量的值作为新变量的名称:例如$foo = “bar”; $$foo = 

           “baz”; 变量$bar的值为”baz”.

5.php变量的命名规则:

        (1)变量名必须以$开始.

        (2)$符号后是数字,字母,下划线的组合形式且不能以数字开头.

        (3)理论上允许使用系统关键字,例如$if,但是不推荐.

6.语句和分号:

        (1)在php结束标签之前的分号是可以不写的.

        (2)空白符与换行:灵活运用使代码更易读.

7.php的注释:

        (1)单行注释: // 注释的内容

        (2)段落注释: /* 注释的内容 */

        (3)shell风格的注释: # 注释的内容

        (4)C++风格的注释: ////// 注释的内容

8.php分支语句:

        (1)单独的if语句.

        (2)if-else嵌套及多重嵌套.

        (3)特殊if形式:

             if (1):

                  echo "为真";

             else:

                  echo “为假”;

             endif;

        (4)传统switch形式

        (5)特殊switch形式:

             $num = 1;

             switch ($num):

                  case 1:echo $num;break;

                  case 2:echo $num;break;

                  case 3:echo $num;break;

             endswitch;

 9.php循环语句:  

        (1)传统的while循环.

        (2)特殊while形式:

             $num = 10;

             while ($num <= 15):

                  echo $num;

                  $num++;

             endwhile; 

        (3)do-while确保循环主题至少执行一次.(同C语言用法)

        (4)传统的for循环. 

        (5)特殊for形式:

            for ($i=0; $i < 10; $i++):

                 echo $i;

            endfor;

        (6)注意:break和continue依然适用,并且在后面加上一个数字就表示跳出/结束循环的层数.

 10.php字符串:

        (1)单引号括起来的字符串:

            (1.)不能插值,及内部不能解析变量

            (2.)可用的转义序列只有 : \’和\\

        (2)双引号括起来的字符串:

            (1.)允许插值,识别变量名

            (2.)支持多种转义序列.(例如:\”,\n,\r,\t,\$)

        (3)打印字符串:echo,print(),printf(),sprintf().

        (4)访问单个字符:printf("%s", $string{0});

        (5)常用函数:

            (1.)全部小写:strtolower($string);

            (2.)全部大写:strtoupper($string);

            (3.)首字母大写:ucfirst($string);

            (4.)每个单词的首字母大写:ucwords($string);

            (5.)比较:可以使用==,===,>,<,>=,<=或者strcmp()函数;

            (6.)截取字符串:substr();

            (7.)一个子串在大串里出现的次数:substr_count();

         ***(8.)替换字符串:substr_replace();

mixed substr_replace ( mixed $string , mixed $replacement , mixed $start [, mixed $length ] )

如果 start 参数是负数且 length 小于或者等于 start,则 length 为 0;

string : 要检查的字符串

replacement: 要插入的替换字符串

start :从何处开始替换 string的下标 1、正数 2、负数:从字符串结尾的指定位置开始替换 3、0 从第一个字符处开始替换

length : 可选参数  替换多少个字符,默认是字符串长度

1、正数 被替换的字符串长度 2、负数:表示待替换掉子字符串结尾处距离string末端的字符个数。 3、0  插入而非替换

返回值: 返回被替换的字符串, 如果string是数组, 则返回数组

            (9.)翻转字符串:strrev();

            (10.)字符串重复组合:str_repeat();

函数把字符串重复指定的次数。

str_repeat(string, repeat)

string: 规定要重复的字符串

repeat : 规定字符串将被重复的次数 >=0

// 替换
    $string1 = ‘i am Jerry‘;
    $string2 = ‘Tom‘;
//    echo substr_replace($string1, $string2, 5);// 从string1下标5处开始替换
//    echo substr_replace($string1, $string2, 5, 3);// length: 可选参数, 替换长度为3, 默认是将string1下标开始的地方到最后
//    echo substr_replace($string1, $string2, 0); // start = 0, 从string1第一个字符处开始替换
//    echo substr_replace($string1, $string2, -3); // start为负数:从字符串结尾的指定位置开始替换
//    echo substr_replace($string1, $string2, 5, -4);// length负数:表示待替换掉子字符串结尾处距离string末端的字符个数
//    echo substr_replace($string1, $string2, 5, 0);// length为0, 表示插入而非替换
//
//    $arr = array("1: AAA","2: AAA","3: AAA");
//    echo substr_replace($arr,‘BBB‘,3,3);

echo str_repeat($string1, 21);// 将字符串string1重复repeat次

11.php数组:

(1)索引数组:(传统数组)

(2)关联数组:(字典)

12.php函数:

 

$ages = array(23, 45, 12, 14, 26, 25, 21, 24, 27, 20);
    $tem = 0;
    $flag = 0;
//    echo $flag; exit();
    for ($i = 0; $i < 10; $i++) {
        $flag = 0;
        for ($j = 0;$j < 10 - $i - 1; $j++) {
            if ($ages[$j] > $ages[$j+1]){

$tem = $ages[$j];
                $ages[$j] = $ages[$j+1];
                $ages[$j + 1] = $tem;
            }
        }
        if ($flag == 0){
            break;
        }
    }
    print_r($ages) ;

时间: 2024-08-26 18:25:18

PHP 基本内容的相关文章

通用导出excel(可控制内容)

实体类 package util; import java.sql.Timestamp; public class Book { private int bookId; private String name; private String author; private float price; private String isbn; private String pubName; private Timestamp date; public Book() { } public Book(i

原创:Docker在云家政的应用 谢绝复制粘贴内容

我们公司目前大规模使用了Docker,目前除了数据库应用,其他所有应用都在Docker容器内运行,下面我就Docker在公司的应用做一些分享.. 首先我介绍一下公司的背景,公司属于中小型创业公司,服务器数量不多,但是为了解决一些问题,我们引入了现在比较火的Docker技术. 看一下我们在没用Docker之前遇到的问题: 1.线上环境和测试环境不完全一致,导致测试好的功能上线后会出现一些BUG. 2.部署新项目步骤繁琐,批量部署运行环境后,需要根据每个项目不同的情况,手动修改配置参数. 3.新项目

Vue内容分发slot

前面的话 为了让组件可以组合,需要一种方式来混合父组件的内容与子组件自己的模板.这个过程被称为 内容分发 (或 “transclusion” ).Vue实现了一个内容分发 API,参照了当前 Web 组件规范草案,使用特殊的 <slot> 元素作为原始内容的插槽.本文将详细介绍Vue内容分发slot 编译作用域 在深入内容分发 API 之前,先明确内容在哪个作用域里编译.假定模板为 <child-component> {{ message }} </child-compone

夏令营讲课内容整理Day 0.

今年没有发纸质讲义是最气的.还好我留了点课件. 第一次用这个估计也不怎么会用,但尝试一下新事物总是好的. 前四天gty哥哥讲的内容和去年差不多,后三天zhn大佬讲的内容有点难,努力去理解吧. 毕竟知识还是需要消化的. 这里我只整理知识点,每天上午评测的题目我会单独处理. 嗯大概就是这样了. 写完后我就会考虑发到博客园里.

张书乐:死活撩不到粉丝G点,内容创业者该咋整?

内容创业的大风口来了,可不是吗!那一年不是内容创业的风口. 1980年代,是朦胧诗.报告文学和武侠:1990年代,言情与少女,新世纪里就更多了,网络文学.网络影视以及各种IP大阵,现在则是自媒体的内容创业. 只是,有时候是来赚钱的,有时候是来赚名的,总的来说,都是来赚存在感的. 文/张书乐(人民网.人民邮电报专栏作家) 新著有<微博运营完全自学手册> 各家平台都准备好了,微信公号里集合了超过千万的运营者:微博再度复活,开始分门别类的做垂直内容:连天涯社区这个老化石,都推出了天涯号,想要拉拢一把

html的一些基本内容

html基本语法 基本格式 <html> <head> <title></title> <meta /> </head> <body> </body></html> 编码规范: 一个文件有且只有一个根标签. 每个标签都是以小写字母的形式存在. 标签要进行合理的嵌套 HTML标签 标签是以尖括号"<>"包裹的,在HTML里代表特殊的含义,比如<html>.&

ASP.NET 母版页和内容页中的事件触发顺序

母版页和内容页触发事件的先后顺序,触发事件的规则一般是初始化事件是从最里边的控件到最外边的控件,其他事件则是从最外边控件到最里边控件. 下面是一个测试: 第一次触发的是母版页的Init事件. 第二次触发的是内容页的Init事件. 第三次触发的是内容页的Load事件 第四次触发的是母版页的Load事件 总结: 母版页与内容页触发事件的顺序: 1.母版页Init事件. 2.内容页Init事件. 3.内容页Load事件 4.母版页Load事件. 5.内容页PreRender事件. 6.母版页PreRe

Linux里如何查找文件内容

Linux查找文件内容的常用命令方法. 从文件内容查找匹配指定字符串的行: $ grep "被查找的字符串" 文件名例子:在当前目录里第一级文件夹中寻找包含指定字符串的.in文件grep "thermcontact" */*.in 从文件内容查找与正则表达式匹配的行:$ grep –e “正则表达式” 文件名 查找时不区分大小写:$ grep –i "被查找的字符串" 文件名 查找匹配的行数:$ grep -c "被查找的字符串&quo

机电传动控制读书笔记二(书本内容)

读书内容:<自动化技术中的进给电气传动>第一章的第1.3节:<控制系统指南>的第一章和第二章:Plecs仿真实验结果. 知识要点: <自动化技术中的进给电气传动> 1.对于线性传递环节的实际系统,其输入量的微分的最高阶数m不大于输出量的最高阶数n, 2.在不可调传动系统情况下,在系统稳定状态下,一个接入的负载转矩ML会产生一个角速度为wM的固定偏差.而且在起始t=0的情况下,发生了ML的跃变.并有如下规律: n=m:当出现一个输入量跃变时,输出量也同样出现一个跃变. n

Linux操作系统文件系统基础知识详解(引用内容)

一 .Linux文件结构  文件结构是文件存放在磁盘等存贮设备上的组织方法.主要体现在对文件和目录的组织上. 目录提供了管理文件的一个方便而有效的途径. Linux使用标准的目录结构,在安装的时候,安装程序就已经为用户创建了文件系统和完整而固定的目录组成形式,并指定了每个目录的作用和其中的文件类型.                     /根目录                              ┃┏━━┳━━━┳━━━┳━━━╋━━━┳━━━┳━━━┳━━━┓┃   ┃      ┃