php入门

PHP 是一门弱类型语言

  • 在上面的实例中,我们注意到,不必向 PHP 声明该变量的数据类型。
  • PHP 会根据变量的值,自动把变量转换为正确的数据类型。
  • 在强类型的编程语言中,我们必须在使用变量前先声明(定义)变量的类型和名称。

1.Web服务器概述

     Web服务器用于:

  • (1)接收客户端的请求
  • (2)理解请求,找到客户端需要的文件
  • (3)把客户端请求的文件输出给客户端

  

      Web服务器的分类:

   (1)静态Web服务器

  • 提供的内容在任何时间由任何人访问都是完全相同的!
  • 所包含技术:HTML、CSS、JS、Flash、Gif、音视频
  • 常见的静态Web服务器: 
  1. Apache Httpd
  2. Microsoft IIS
  3. NginX

  (2)动态Web服务器

  • 提供的内容在不同时间由不同人访问是变化的!
  • 所包含的技术:
  1. JSP = HTML + Java
  2. PHP = HTML + Php
  3. ASP.NET = HTML + C#
  4. Node.js = HTML + NodeJS

2.PHP服务器的搭建

  (1)服务器端:下载并安装一款静态Web服务器

    C:\xampp\apache\bin\httpd.exe

     (2)服务器端:下载并安装PHP语言的解释器

       C:\xampp\php\php.exe

  推荐使用软件套装(如XAMPP/WAMP等)完成上述两步

       (3)服务器端:编写网页,保存在htdocs目录

    C:\xampp\htdocs\

       (4)服务器端:启动Web服务器,等待客户端发起请求

    确保80端口httpd.exe占用

  ------------------------------------------

       (5)客户端:向服务器发起请求,获取服务器端响应内容

    http://服务器的域名或IP地址:80

    http://127.0.0.1:80 127.0.0.1指代当前计算机

ipconfig:用于查看当前计算机的IP地址信息

练习:编写一个.php文件,保存在htdocs目录下

<!doctype html>
<html>
  <head>
    <meta charset="utf-8">
  </head>
  <body>
    <h1>我的第一个<br>PHP网页</h1>
    <?php      //PHP解释器只会处理此标记中的内容
    $msg = 'Hello World';   //PHP变量名必须以$开头
    for($i=0; $i<10; $i++){
        //echo($msg);   //PHP语句分号不能省略
        //echo($i+$msg);    //+只做数学运算
        //echo($i);
        //echo($msg);
        echo($i . $msg);    //.是字符串拼接
        //<br>;
        echo('<br>');
    }
    ?>
  </body>
</html>

练习:一个9X9乘法口诀表:

<!doctype html>
<html>
  <head>
    <title>标题</title>
    <meta charset="utf-8">
  </head>
  <body>
    <h1>练习4-九九乘法表</h1>
    <table width="100%" border="1">
      <tbody>
      <?php
        for($i=1; $i<=9; $i++){
            echo '<tr>';
            for($j=1; $j<=$i; $j++){
                echo '<td>';
                echo $i.'*'.$j.'='.($i*$j);
                echo '</td>';
            }
            echo '</tr>';
        }    
      ?>
      </tbody>
    </table>
  </body>
</ht<?php echo 'm'; ?>l>

1、PHP中的字符串

<?php
//php中的字符串

$ename = 'feng';
$phone = "12345678901";

echo '姓名:'.$ename.' 电话:'.$phone;
echo '<br>';
echo '姓名:$ename 电话:$phone';
echo '<br>';

//双引号字符串中若包含$变量,会被转换为变量值
echo "姓名:$ename 电话:$phone";
echo '<br>';
//echo "姓名:$ename电话:$phone";
//echo '<br>';

2、echo,var_dump

<?php
$i = 10;
//echo $i;
var_dump($i);        //查看一个变量的类型及值
echo '<br>';

$i = 10.0;
var_dump($i);        //查看一个变量的类型及值
echo '<br>';

$i = '10.0';
var_dump($i);        //查看一个变量的类型及值
echo '<br>';

3、数组的语法

<?php
//phpinfo();  //输出PHP解释器的信息
//创建数组的语法
$list = array(10, 30, 50);   //PHP5.3-
$list = [10, 30, 50];   //PHP5.4+
//echo $list;  //错误!数组不能转换为字符串
//echo $list[0];
//echo $list[1];
//echo $list[2];
var_dump($list);

echo '<hr>';


/*****索引数组:每个元素下标是数字******/
$list = [101, 30, 5000, 'Tom', false];
//$list[5] = '知春路';
//echo count($list);  //返回数组中元素的个数
//$list[ count($list) ] = '知春路';
$list[] = '知春路';        //向数组尾部添加新元素
$list[] = '12345678909';
//var_dump($list);
for($i=0; $i<count($list); $i++){
    echo "$i - $list[$i] <br>";
}
echo '<hr>';


/*****关联数组:每个元素下标是字符串******/
$list = [ 
    'eid'=>102, 
    'age'=>35, 
    'ename'=>'Tom', 
    'isMarried'=>false 
];
$list['addr'] = '知春路';
//echo count($list);
echo $list['eid'];

4、二位数粗

<?php
/*创建一个二维数组,保存5个商品的信息,每个商品都有pid、pname、price、birthday,isOnsale, pic属性,把这些信息输出在一个TABLE元素中*/
$list = [
  ['pid'=>101, 'pname'=>'可口可乐', 'price'=>3.5, 'birthday'=>1234567890123, 'isOnsale'=>true, 'pic'=>'img/101.jpg'],
  ['pid'=>102, 'pname'=>'百事可乐', 'price'=>3.6, 'birthday'=>1234567890123, 'isOnsale'=>false, 'pic'=>'img/102.jpg'],
  ['pid'=>103, 'pname'=>'非常可乐', 'price'=>3.7, 'birthday'=>1234567890123, 'isOnsale'=>false, 'pic'=>'img/103.jpg']
];

$list[]=['pid'=>104, 'pname'=>'雪碧', 'price'=>3.8, 'birthday'=>1234567890123, 'isOnsale'=>true, 'pic'=>'img/104.jpg'];

$list[]=['pid'=>105, 'pname'=>'芬达', 'price'=>3.9, 'birthday'=>1234567890123, 'isOnsale'=>false, 'pic'=>'img/105.jpg'];

//var_dump($list);
/*
$p = $list[0];
echo $p['pid'];        //正确
//echo $p[pid];        //错误
//echo "编号:$p['pid']";     //错误
echo "编号:$p[pid]";         //正确 
*/

echo '<table width="100%" border="1">';
echo '<thead><tr><th>编号</th><th>名称</th><th>单价</th><th>生产日期</th><th>是否特价</th><th>图片</th></tr></thead>';
echo '<tbody>';
for($i=0; $i<count($list); $i++){
    $p = $list[$i];  //依次遍历每个商品
    echo '<tr>';
    echo "  <td>$p[pid]</td>";
    echo "  <td>$p[pname]</td>";
    echo "  <td>$p[price]</td>";
    echo "  <td>$p[birthday]</td>";
    echo "  <td>$p[isOnsale]</td>";
    echo "  <td>$p[pic]</td>";
    echo '</tr>';
}
echo '</tbody>';
echo '</table>';

5、foreach遍历

<?php
/*创建一个二维数组,保存5个商品的信息,每个商品都有pid、pname、price、birthday,isOnsale, pic属性,把这些信息输出在一个TABLE元素中*/
$list = [
  ['pid'=>101, 'pname'=>'可口可乐', 'price'=>3.5, 'birthday'=>1234567890123, 'isOnsale'=>true, 'pic'=>'img/101.jpg'],
  ['pid'=>102, 'pname'=>'百事可乐', 'price'=>3.6, 'birthday'=>1234567890123, 'isOnsale'=>false, 'pic'=>'img/102.jpg'],
  ['pid'=>103, 'pname'=>'非常可乐', 'price'=>3.7, 'birthday'=>1234567890123, 'isOnsale'=>false, 'pic'=>'img/103.jpg']
];

$list[]=['pid'=>104, 'pname'=>'雪碧', 'price'=>3.8, 'birthday'=>1234567890123, 'isOnsale'=>true, 'pic'=>'img/104.jpg'];

$list[]=['pid'=>105, 'pname'=>'芬达', 'price'=>3.9, 'birthday'=>1234567890123, 'isOnsale'=>false, 'pic'=>'img/105.jpg'];

//var_dump($list);
/*
$p = $list[0];
echo $p['pid'];        //正确
//echo $p[pid];        //错误
//echo "编号:$p['pid']";     //错误
echo "编号:$p[pid]";         //正确 
*/

echo '<table width="100%" border="1">';
echo '<thead><tr><th>编号</th><th>名称</th><th>单价</th><th>生产日期</th><th>是否特价</th><th>图片</th></tr></thead>';
echo '<tbody>';
for($i=0; $i<count($list); $i++){
    $p = $list[$i];  //依次遍历每个商品
    echo '<tr>';
    echo "  <td>$p[pid]</td>";
    echo "  <td>$p[pname]</td>";
    echo "  <td>$p[price]</td>";
    echo "  <td>$p[birthday]</td>";
    echo "  <td>$p[isOnsale]</td>";
    echo "  <td>$p[pic]</td>";
    echo '</tr>';
}
echo '</tbody>';
echo '</table>';

6、function

<?php
$msg = 'hello';

//返回一个随机的表示颜色的字符串
function randColor(){
    global $msg;  //声明使用一个全局变量
    echo $msg;
    $r = rand(0, 255);
    $g = rand(0, 255);
    $b = rand(0, 255);
    return "rgb($r, $g, $b)";
}

echo randColor();

最后请大家查询PHP官网进行更复杂的学习。

 

posted @ 2017-12-17 10:11  魏耀峰  阅读(275)  评论(0编辑  收藏  举报

此页面上的内容需要较新版本的 Adobe Flash Player。

获取 Adobe Flash Player