PHP学习 第一天

一、 使用的mac电脑,集成环境安装的是 MAMP(Apache Server、Mysql、PHP)php

  左上角 MAMP -> Preferences ,里面是集成环境配置。Port是环境的端口配置,Web-Server->Document Root下面是个路径,Web-Server会在选中的文件夹搭建服务,因此PHP代码须要保存在这个被选中的文件夹里面。html

 

二、PHP环境有了,了解一下什么是PHP:mysql

  https://www.php.net/manual/zh/intro-whatis.phpweb

  PHP(“PHP: Hypertext Preprocessor”,超文本预处理器的字母缩写)是一种被普遍应用的开放源代码的多用途脚本语言,它可嵌入到 HTML中。sql

  和客户端的 JavaScript 不一样的是,PHP 代码是运行在服务端的。数据库

  官网给了个例子:数组

<html>
    <head>
        <title>Example</title>
    </head>
    <body>

        <?php
        echo "Hi, I'm a PHP script!";
        ?>

    </body>
</html>

  我建立了一个.php文件,代码粘进去了,访问了一下地址。嗯,成功了。浏览器

  

 

三、PHP能作点儿什么服务器

  PHP 主要是用于服务端的脚本程序,所以能够用 PHP 来完成其它的 CGI (Common Gateway Interface) 程序可以完成的工做,例如收集表单数据,生成动态网页,或者发送/接收 Cookies。app

  PHP脚本主要用于的三个领域:

    服务端脚本

      PHP 最传统,也是最主要的目标领域。开展这项工做须要具有如下三点:PHP 解析器(CGI 或者服务器模块)、web 服务器和 web 浏览器。须要在运行 web 服务器时,安装并配置 PHP,而后,能够用 web 浏览器来访问 PHP 程序的输出,即浏览服务端的 PHP 页面。

    命令行脚本

      能够编写一段 PHP 脚本,而且不须要任何服务器或者浏览器来运行它。经过这种方式,仅仅只须要 PHP 解析器来执行。这种用法对于依赖 cron(Unix 或者 Linux 环境)或者 Task Scheduler(Windows 环境)的平常运行的脚原本说是理想的选择。    

    编写桌面程序

      对于有着图形界面的桌面应用程序来讲,PHP 或许不是一种最好的语言,可是若是用户很是精通 PHP,而且但愿在客户端应用程序中使用 PHP 的一些高级特性,能够利用 PHP-GTK 来编写这些程序。

  PHP 最强大最显著的特性之一,是它支持很大范围的数据库。使用任何针对某数据库的扩展(例如 mysql)编写数据库支持的网页很是简单,或者使用抽象层如 PDO,或者经过 ODBC 扩展链接到任何支持 ODBC 标准的数据库。其它一些数据库也可能会用 cURL 或者 sockets,例如 CouchDB。

 

4、PHP类型

  PHP 支持 种原始数据类型。

        四种表量类型

      boolean、integer、float、string

    三种复合类型

      array、object、callable

    两种特殊类型

      resource、NULL 

  array :

<?php
$array = array(
    "foo" => "bar",
    "bar" => "foo",
    100   => -100,
    -100  => 100,
);
var_dump($array);
?>

 

5、PHP 部分语法  

  * var_dump() 函数用于输出变量的相关信息。var_dump() 函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,经过缩进显示其结构。

  echoprint 之间的差别:

    echo - 可以输出一个以上的字符串

    print - 只能输出一个字符串,并始终返回 1

   提示:echo 比 print 稍快,由于它不返回任何值。

  * $t = date("Y-m-d H:i:s") //2019-04-24 07:39:02

 

6、字符串函数

  * strlen() : 函数返回字符串的长度,以字符计。

<?php 
	$a = "asddddeewss";
	echo strlen($a);
?>

  * str_word_count() : 函数对字符串中的单词进行计数

<?php 
	$a = "Hello My name is haha";
	echo str_word_count($a);
?>

  * strrev() : 函数反转字符串

<?php 
	$a = "Hello My name is haha";
	echo strrev($a);
?>

  * strpos() : 函数用于检索字符串内指定的字符或文本。

<?php 
	$a = "Hello My name is haha";
	echo strpos($a,"name");
?>

  * str_replace() : 函数用一些字符串替换字符串中的另外一些字符

<?php
    echo str_replace("world", "Kitty", "Hello world!"); // 输出 Hello Kitty!
?>

 

7、运算符

<?php
    $x=17; 
    $y=8;
    echo ($x + $y); // 输出 25
    echo ($x - $y); // 输出 9
    echo ($x * $y); // 输出 136
    echo ($x / $y); // 输出 2.125
    echo ($x % $y); // 输出 1
?>

 

8、条件语句

<?php
       $t=date("H");

	if ($t<"10") {
	  echo "Have a good morning!";
	} elseif ($t<"20") {
	  echo "Have a good day!";
	} else {
	  echo "Have a good night!";
	}
?>

 

9、Switch语句

<?php    
    $favfruit="apple";
    switch ($favfruit) {
        case "apple":
	     echo "Your favorite fruit is apple!";
	     break;
        case "banana":
	     echo "Your favorite fruit is banana!";
	     break;
	case "orange":
	     echo "Your favorite fruit is orange!";
	     break;
	default:
            echo "Your favorite fruit is neither apple, banana, or orange!";
    }
?>

 

10、for循环

  *  for 循环

<?php 
    for ($x=0; $x<=10; $x++) {
      echo "数字是:$x <br>";
    } 
?>

  *  foreach循环

    value 结构 array 的循环遍历

<?php 
    $colors = array(8,7,6,5,4,3,2); 

    foreach ($colors as $value) {
          echo "$value <br/>";
    }
?>

    $key => $value 结构 array 的遍历:

<?php
    $arr = array(
        "foo" => "bar",
        "bar" => "foo",
        100   => -100,
        "asd" => array(
        	"a" => 12,
        	"b" => 23
        )
    );

    foreach ($arr as $key => $value) {
	echo "$key: $value <br/>";
    }
?>

 

11、PHP函数

  用户定义的函数声明以单词 function 开头:

function functionName() {
  被执行的代码;
}
<?php
    function sum($x,$y) {
        $z=$x+$y;
        return $z;
    }

    echo "5 + 10 = " . sum(5,10) . "<br>";
    echo "7 + 13 = " . sum(7,13) . "<br>";
    echo "2 + 4 = " . sum(2,4);
?>

  

12、数组中的排序函数

  • sort() - 以升序对数组排序
  • rsort() - 以降序对数组排序
  • asort() - 根据值,以升序对关联数组进行排序
  • ksort() - 根据键,以升序对关联数组进行排序
  • arsort() - 根据值,以降序对关联数组进行排序
  • krsort() - 根据键,以降序对关联数组进行排序
相关文章
相关标签/搜索