物联网解决方案
12下一页
返回列表 发新帖

【PHP入门到精通】开发快M304I后台服务编程教程

[复制链接]
  • TA的每日心情
    奋斗
    2017-9-16 10:56
  • 签到天数: 127 天

    [LV.7]常住居民III

    311

    主题

    1649

    帖子

    5940

    积分

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    5940
    QQ
    发表于 2017-5-13 14:31:19  | 显示全部楼层 | 阅读模式

    公开设备实时看 这是什么->

    20:57
    匿名用户
    通过微信查询温湿度
    20:52
    匿名用户
    通过微信控制多彩灯光
    20:52
    匿名用户
    通过微信控制多彩灯光
    20:52
    匿名用户
    通过微信控制多彩灯光
    20:52
    匿名用户
    通过微信控制多彩灯光
    20:52
    匿名用户
    通过微信控制多彩灯光
    20:52
    匿名用户
    通过微信控制多彩灯光
    20:51
    匿名用户
    通过微信查询温湿度
    20:51
    匿名用户
    通过微信控制多彩灯光
    20:51
    匿名用户
    通过微信控制多彩灯光
    20:51
    匿名用户
    通过微信控制多彩灯光
    20:51
    匿名用户
    通过微信控制多彩灯光
    20:51
    匿名用户
    通过微信控制多彩灯光
    20:51
    匿名用户
    通过微信控制多彩灯光
    20:51
    匿名用户
    通过微信控制多彩灯光
    20:51
    匿名用户
    通过微信控制多彩灯光
    20:51
    匿名用户
    通过微信控制多彩灯光
    20:51
    匿名用户
    通过微信控制多彩灯光
    20:51
    匿名用户
    通过微信控制多彩灯光
    20:51
    匿名用户
    通过微信控制多彩灯光
    20:51
    匿名用户
    通过微信控制多彩灯光
    20:51
    匿名用户
    通过微信控制多彩灯光
    20:51
    匿名用户
    通过微信控制多彩灯光
    20:51
    匿名用户
    通过微信控制多彩灯光
    20:51
    匿名用户
    通过微信控制多彩灯光
    20:51
    匿名用户
    通过微信控制多彩灯光
    20:51
    匿名用户
    通过微信控制多彩灯光
    20:50
    匿名用户
    通过微信控制多彩灯光
    20:50
    匿名用户
    通过微信控制多彩灯光
    20:50
    匿名用户
    通过微信控制多彩灯光
    20:50
    匿名用户
    通过微信控制多彩灯光
    20:50
    匿名用户
    通过微信控制多彩灯光
    20:50
    匿名用户
    通过微信控制多彩灯光
    20:50
    匿名用户
    通过微信控制多彩灯光
    20:50
    匿名用户
    通过微信控制多彩灯光
    20:50
    匿名用户
    通过微信控制多彩灯光
    20:50
    匿名用户
    通过微信控制多彩灯光
    20:50
    匿名用户
    通过微信控制多彩灯光
    20:50
    匿名用户
    通过微信控制多彩灯光
    20:50
    匿名用户
    通过微信控制多彩灯光
    20:50
    匿名用户
    通过微信控制多彩灯光
    20:50
    匿名用户
    通过微信控制多彩灯光
     

    马上注册,免费领取开发板,一周变智能硬件开发达人!

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    本帖最后由 STM64 于 2017-5-15 09:57 编辑

    概述:

    开发快M304I后台服务程序的官方例程是用PHP编写的,PHP比较好的一点是编程语句通俗易懂,很快就能上手,对快速开发很有帮助,虽说如此,不过对于刚接触php的童鞋,想get一门新编程语言也是有些挑战性的,毕竟人的记忆与适应都需要一段时间,从小白到工程师都是这样过来的,当然也有些人可能以前做过网站或参与过相关开发,这样上手PHP会很快,也会很轻松,每个开发者都有各自的长处,也都有自己喜欢的编程语言,当然一个易于上手的编程语言也会受大家的欢迎,本帖就PHP语言的编程方法和语法操作展开叙述,欢迎大家在本帖中学习交流。

    文件准备:
    我们将以开发快后台服务程序作为演示例程来讲解PHP语言的编程
    首先,上源码文件
    m260-php-source.rar (1.6 MB, 下载次数: 53)
    这是官方原版的,没有修改过,
    下文很多东西都需要用到这个文件,所以先放上来,避免产生文件在哪的类似询问还有一个官方说明文件,大家也可下载下来先看看 M260后台端代码设计概要.docx (55.92 KB, 下载次数: 32)
    这个说明文件涵盖的内容很全面,只要有PHP基础或者摸到PHP的门便能读懂

    硬件准备:

    用PHP编程很简单,几乎不用准备什么东西,
    一台电脑,一个人,一块开发快开发板,便已足够
    电脑装安卓模拟器可以不用准备手机,准备了手机也可少装安卓模拟器


    快速开始开发:
    在任意盘符的根文件夹下新建一个空目录,取名KFK,将上面的开发快后台服务程序PHP源码包解压到目录中

    然后先随便点开一些感兴趣的文件看一下,感受一下能不能直接看懂,有哪些东西看不太懂,以后可以针对这些看不懂的部分学习,大部分文件用notepad.exe(记事本)均可打开,如果电脑上有notepad++或其他专业的PHP编辑器更好,这些软件比notepad好的地方在于它们有一部分可以识别php语法,能检查编程的对误,用红绿或波浪线有提示,这些东西好用,但笔者在这里不推荐任何软件,对初学者来说,能自行检查错误也是好的,这是一个好习惯,如果比较随意与惯纵,那就让软件来提示您有没有错误吧,也并非不可,同样也能完成开发,同样这种查错也适合敲大长串代码防误按,这才是自动查错存在的意义。
    说了这么多,先让大家会PHP的hello,world:

    代码如下,下面有解释,这个代码单独放方便大家复制:

    <!DOCTYPE html>
    <html>
    <body>

    <?php
    echo "Hello World!";
    ?>

    </body>
    </html>

    代码解释:

    <!DOCTYPE html>   //html type
    <html>     // html头
    <body>    //网页主体开始

    <?php          //PHP开头
    echo "Hello World!";      //输出你好世界,人都是聪明的,貌似这一行不用注释大家也能看懂
    ?>      //PHP结束

    </body>     //网页主体结束
    </html>  //html结束


    看到<?php是开头,也就是这部分开始是php,而后面PHP结束就表示后面与php无关,由html语言处理


    由于不知道大家有没有html基础
    所以
       如果  html=会
                  then  跳过读这一行
              else
                往大脑记忆区寻空位址,存入“html的大部分语法都是成对出现的,像body与/body,斜杠的一般表示结束,如果有title表示标签”,更多html请参见百度,此处主要介绍PHP   
       结束如果

    还有就是echo在bat里也有类似命令,也是输出显示用的,不去论处理细节跟特殊用法效果,也就是不去钻一些牛角尖,普通用用效果是差不多的
    还有双斜杠也如此,表注释,不执行

    暂时没想到其他的了,如果还有其他不懂的可以问我,如果以前什么编程都没接触过,英文单词看不懂可以用有道词典、谷歌翻译等


    看到这儿,大家可能对PHP已经稍有感觉了,再来看看开发快的源码,看能看懂什么,有没有比之前稍微多一点能看懂的内容   

    值得一提的是,这篇文章有考虑A4印刷排版,您可印出来装订成册,搞完我可能会做个封面跟封底,还有个目录



    stm32,FPGA
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2017-9-16 10:56
  • 签到天数: 127 天

    [LV.7]常住居民III

    311

    主题

    1649

    帖子

    5940

    积分

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    5940
    QQ
    发表于 2017-5-13 15:29:36  | 显示全部楼层
    本帖最后由 STM64 于 2017-5-13 17:29 编辑

    //为了防止手机缓冲区出错造成码字丢失,分多楼层写,字数差不多了就用新楼层,这样可以防止全部写完后一堆内容突然没掉,有时候这样子没掉可能就不想再重写了,或者写得很简略,这样不利于大家学习,所以干脆分开来续楼

             注释大概是上面这段话这种感觉,程序中即使没有注释也不影响程序运行,本文中即使没有上面这段话也不影响您继续学习

            对了,还有一个细节前面忘提了,现在说一下,PHP的后面有英文的分号结尾的,机器没人脑聪明,所以写完一句要用分号告诉它这句写完了,也可以说这是机器严谨吧,如果只是简单用用,用回车自动识别也可以,为什么要加分号在设计上的原因是PHP语法解释器一般不管回车,还有就是中文的;在部分自动纠错的软件里也勉强可以,这个分号就像我们中文每句话里面的句号,可以这样理解,这儿并不是一句话结尾,而是一个程序的一个分段,所以每行都分号,程序搞完结尾用?>来结束,还有就是有些软件开PHP回车会自动分号,但有些高级的也例外,就像我现在写这个教程,有些锯末有句号,有些没有,有些为了防止跟下一段粘连在一起用了逗号或空格,这都影响不大,人脑会自动判断,只要读的人想读都能读懂,程序智能纠错后也是如此,所以只管放开来思考程序的架构吧,不必过于拘泥这些小细节,只要知道有这种小东西存在就行了



        继续上节课的内容     

           我们先打开开发快后台程序PHP目录下的index.php这个文件,我现在是用爪机码字,手机用X-plore也能打开这个文件,用手机截图方便但传图片选择相册库要卡机好久,图等有电脑补,

    打开开发快后台程序PHP目录下的index.php这个文件

    能看到下面内容

    <?php
    //1.确定应用名称 App
    define('APP_NAME', 'APP');
    //2.确定应用路径
    define('APP_PATH', './App/');
    //3.开启调试模式
    define('APP_DEBUG', TRUE);
    //4.应用核心文件
    define('THINK_PATH', './ThinkPHP/');
    //require './ThinkPHP/ThinkPHP.php';
    require (THINK_PATH . 'ThinkPHP.php');
    //sdfssdfwsadasdasd
    ?>


    PHP的开始结束语法跟前面提到的一样,能看懂,

    //是注释,也能看懂

    注释里面的中文真名也能看懂

    注释哪行对应哪行,可能有些傻傻分不清,是对应上面还是下面

    我把排版换一下,这样子容易看懂一些:


    define('APP_NAME', 'APP');     //1.确定应用名称 App




    define('APP_PATH', './App/');   //2.确定应用路径




    define('APP_DEBUG', TRUE);    //3.开启调试模式


    然后解释一下:

             define('APP_NAME', 'APP');

    这个是程序名称,想改也可以改

    后面的true跟false是布尔,下文会讲到,一般不能改成其他任意字符

    然后后面路径也都一样,只要不把主体框架动到,随便改都可以

    后面几句也都差不多的,靠感觉都能弄对,

    上面说了,注释不影响程序运行,修改注释或把注释去掉也都可以,随你们开心

    但注释会影响程序大小,比如机器内存有2MB,把注释写个一长篇进去,大于2MB了,程序烧不进去跑不起来,算不算影响程序运行了呢,所以有些东西也不能太随意,适当就好

    今天再来介绍一个PHP语法

    <?php

    phpinfo();

    ?>

          前后的开始结尾都见过了,
       中间的phpinfo是一个显示php服务端配置的函数,如果在当前设备运行这个语句,那看到的就是当前设备的参数

    中间的空行空不空都没关系,多空几行也无所谓,php编译执行一般认分号,不太管回车,空着看着舒服就好,注释也是,也是为了看着舒服,更容易修改,更容易找到等










    stm32,FPGA
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2017-9-16 10:56
  • 签到天数: 127 天

    [LV.7]常住居民III

    311

    主题

    1649

    帖子

    5940

    积分

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    5940
    QQ
    发表于 2017-5-13 16:05:12  | 显示全部楼层
    本帖最后由 STM64 于 2017-5-13 16:28 编辑

            然后我们接着看源码文件
    挑个大家可能感兴趣的先看,
    而且还要零基础也能看懂的,


         找到        ...\M260后台源码和设计文档\m260\ThinkPHP\Lang   

             这个文件夹

    lang是language的意味

    也就是放语言的

    里面有中文跟英文

    ZH-CN是中文

    打开zh-cn.php


    可以看到

    /**
    * ThinkPHP 简体中文语言包
    * @category   Think



    找对了吧


    没找对可以来问我


    然后看下面一堆:


    return array(
        //  核心
        '_MODULE_NOT_EXIST_'    =>  '无法加载模块',
        '_ERROR_ACTION_'        =>  '非法操作',
        '_LANGUAGE_NOT_LOAD_'   =>  '无法加载语言包',
        '_TEMPLATE_NOT_EXIST_'  =>  '模板不存在',
        '_MODULE_'              =>  '模块',
        '_ACTION_'              =>  '操作',
        '_ACTION_NOT_EXIST_'    =>  '控制器不存在或者没有定义',
        '_MODEL_NOT_EXIST_'     =>  '模型不存在或者没有定义',
        '_VALID_ACCESS_'        =>  '没有权限',
        '_XML_TAG_ERROR_'       =>  'XML标签语法错误',
        '_DATA_TYPE_INVALID_'   =>  '非法数据对象!',
        '_OPERATION_WRONG_'     =>  '操作出现错误',
        '_NOT_LOAD_DB_'         =>  '无法加载数据库',
        '_NO_DB_DRIVER_'        =>  '无法加载数据库驱动',
        '_NOT_SUPPORT_DB_'      =>  '系统暂时不支持数据库',
        '_NO_DB_CONFIG_'        =>  '没有定义数据库配置',
        '_NOT_SUPPERT_'         =>  '系统不支持',
        '_CACHE_TYPE_INVALID_'  =>  '无法加载缓存类型',
        '_FILE_NOT_WRITEABLE_'  =>  '目录(文件)不可写',
            '_METHOD_NOT_EXIST_'    =>  '您所请求的方法不存在!',
        '_CLASS_NOT_EXIST_'     =>  '实例化一个不存在的类!',
        '_CLASS_CONFLICT_'      =>  '类名冲突',
        '_TEMPLATE_ERROR_'      =>  '模板引擎错误',
        '_CACHE_WRITE_ERROR_'   =>  '缓存文件写入失败!',
        '_TAGLIB_NOT_EXIST_'    =>  '标签库未定义',
            '_OPERATION_FAIL_'      =>  '操作失败!',
            '_OPERATION_SUCCESS_'   =>  '操作成功!',
            '_SELECT_NOT_EXIST_'    =>  '记录不存在!',
        '_EXPRESS_ERROR_'       =>  '表达式错误',
        '_TOKEN_ERROR_'         =>  '表单令牌错误',
        '_RECORD_HAS_UPDATE_'   =>  '记录已经更新',
        '_NOT_ALLOW_PHP_'       =>  '模板禁用PHP代码',
        '_PARAM_ERROR_'         =>  '参数错误或者未定义',
    );


    这些都可以改的


    然后我们在外面建个jp-cn.php

    复制zh-cn.php改名即可

    先建文件,挂接以后会介绍

    既然后面带了cn,那后面改成

    /**
    * ThinkPHP 中式日语语言包
    * @category   Think
    * @package  Lang

    后面那些字用谷歌翻译差不多都能译出来,
    这样我们添加了一种语言  
    当然还能添加更多,不过谷歌的准确性只能拿来玩玩,真正做产品还要请专业翻译搞一下,
    还有就是添加像阿拉伯语这样跟我们汉语左右倒着顺序的,需要注意一下代码编写器的支持能力

    其他语言只要单词差不多对,其他人也能勉强读懂
    就如同
    php的最后一行加不加;都没关系

    我人生看到的第一句有其他人告诉我意思的英语不是Hello world而是made in china,印象深刻

    php的路径和文件名尽量用半角英文和数字这些,如果喜欢随意喜欢用中文,可以找支持中文的相关软件,而不会找也不会设置,最简单的方法就是只用英文,这样可以避免很多不必要的bug,还有一些特殊符号,还有空格也是最好别去用的,如果不确定能不能用,就最好别用,或者可以做些试验看下哪些能用,这些或许都能成为您日后编程宝贵的经验。

    PHP会区分大小写,这个有些让人感觉不是很随意,有个方法是能小写的都小写,这样不容易出错,我用了七年左右这个方法

    还有就是php还能简易声明,想偷懒的也可以做实验试试,可能本文末尾也会介绍,这个不是很推荐初学者使用,因为用着太容易坑了,各种花式bug尽现









    stm32,FPGA
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2017-9-16 10:56
  • 签到天数: 127 天

    [LV.7]常住居民III

    311

    主题

    1649

    帖子

    5940

    积分

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    5940
    QQ
    发表于 2017-5-13 16:47:11  | 显示全部楼层
    本帖最后由 STM64 于 2017-5-13 17:05 编辑

            然后,我们再来随便找个文件看下

            这次我们找难一点的,
             找那种不打算看懂的,

    找个
    ...\m260\Script\clearGPS.php
    然后看下

    是不是有一堆没见过的语法

    要是能读懂,是不是能学到很多东西,

    人类学母语快速是源于本能,这个也是如此,

    看到一堆新东西看不懂,却想学,这就是本能  


    代码如下:

    <?php
    /**
    *  清除昨天的GPS数据
    *  @author  v.r
    *   错误写入日志
    *   script_log(路径,信息);
    *   任务设置凌晨0点整执行
    *   0 0 * * * /usr/bin/php /www/m260/Script/clearGPS.php
    */

    //error_reporting(0);
    //exec('ps -ef | grep ' . basename(__FILE__) . ' | grep -v grep | grep -v sh', $out); // cron will have 'sh -c'
    //if( count($out) > 1 ) exit;   


    define ('ROOT', dirname ( dirname ( __FILE__ ) ) );
    require_once ROOT.'/Script/bootstrap.php';
    $time = strtotime('-7 day',time());
    $trailModel = M("uids_trail");
    $condition['create_time']  = array('lt',$time);  
    $trailModel->where($condition)->delete();
    exit;


    代码包含的信息量有点大,

    先来介绍简单的:

    /**
    *  清除昨天的GPS数据
    *  @author  v.r
    *   错误写入日志
    *   script_log(路径,信息);
    *   任务设置凌晨0点整执行
    *   0 0 * * * /usr/bin/php /www/m260/Script/clearGPS.php
    */


    这些是注释,/*跟*/分别代表开头和结尾

    看,又学到一种注释方法,

    这种注释方法适合注释一堆东西

    这个语法大致可以靠感受,跟学母语一样

    顺带说一下,把//换成#也能注释,我现在随便点开几个没看到这个#的例子,就直接说了

    还有就是挺多开发者把注释写在代码的上一行,先注释,再代码,不过写在其他位置也没关系,问题不大,喜欢就好


    注释也能用来让代码不执行,有时候不想删可以暂时注释一下,如果没查错软件,这个能查bug用


    有些软件还能自动生成注释,然后再人工改下即可,批量自动生成的字可以在软件目录里找类似上面语言包的东西,可以改的


    最后的exit;表示结束


    中间这些如果直接学,反而急于求成会失去中间很多的细节

    先从基本的运算开始吧

    看这个并感受一下:

    <?php
    //变量不能以数字开始,但是数字可以夹在变量名中间和结尾
    $kfk01 = 8888;
    $kfk304i =8826;
    ?>


    这是变量赋值

    再感觉一下:

    <?php
    //变量不能以数字开始,但是数字可以夹在变量名中间和结尾
    $x = 5;
    $y =8;
    ?>


    有感觉了吗

    这些是赋值,给变量赋值


    变量要用$开头,别特殊符号,别空格,尽量别跟php中固定用词冲突,其余问题不大


    名称中英文半角的  _  可以用
    前面的不能数字开头,也就是英文字母(半角)开头就没关系了

    来输出一下:


    <?php

    $kfk = 8888;

    echo $kfk;

    ?>


    echo是什么如果忘了就往前翻,再往大脑记忆体里刷新一下,这种东西一般复习2-3遍就不会忘






    stm32,FPGA
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2017-9-16 10:56
  • 签到天数: 127 天

    [LV.7]常住居民III

    311

    主题

    1649

    帖子

    5940

    积分

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    5940
    QQ
    发表于 2017-5-13 17:15:58  | 显示全部楼层
    本帖最后由 STM64 于 2017-5-15 09:56 编辑

    上面说的是变量,再来说说其他数据类型

    有纯文本,布尔,数字,变量等

    变量上面感觉过了

    纯文本就是字面意思,所需知道的是,把它称作“字符串”就行了,这样更像程序员,当然跟普通人交流的能力保持住更好

    布尔就是T /F,也就是有无,用猿语0,1,跟UG里的布尔求和求差感觉是不同的,1为t,0为f

    数字有整数,小数等

    小数,浮点什么的先等下将,

    整数,整数类型,整型

    直接叫“整型”会显得更专业   

    整形就是整数。。。算不算**。。。向程序猿进化

    整数有

    我们常用的十进制

    其实还有2,8,16等

    bin,hex这些都是上面十进制外的代名词

    怎么个叫法都没关系

    编出的程序能用,好用,用的人多,经济效益好 才是硬道理

    integer还有int都是整型的意思

    用变量前声明变量与否看情况,如果不知道要不要声明,那就都声明

    后面会讲述是否声明,如何声明等

    十六进制用0x

    $shiliu = 0x9A3
    八进制:

    $ba =  0155222

    变量为空用null



    stm32,FPGA
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2017-9-16 10:56
  • 签到天数: 127 天

    [LV.7]常住居民III

    311

    主题

    1649

    帖子

    5940

    积分

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    5940
    QQ
    发表于 2017-5-13 17:33:44  | 显示全部楼层
    下星期继续
    stm32,FPGA
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-5-10 09:22
  • 签到天数: 1 天

    [LV.1]初来乍到

    0

    主题

    2

    帖子

    380

    积分

    知识达人

    Rank: 3Rank: 3

    积分
    380
    发表于 2017-5-15 10:14:37  | 显示全部楼层
    好贴必回。。。。
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2017-9-16 10:56
  • 签到天数: 127 天

    [LV.7]常住居民III

    311

    主题

    1649

    帖子

    5940

    积分

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    5940
    QQ
    发表于 2017-5-15 15:38:12  | 显示全部楼层
    huangwei 发表于 2017-5-15 10:14
    好贴必回。。。。

    感谢您的支持
    stm32,FPGA
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2017-9-16 10:56
  • 签到天数: 127 天

    [LV.7]常住居民III

    311

    主题

    1649

    帖子

    5940

    积分

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    5940
    QQ
    发表于 2017-5-15 15:54:51  | 显示全部楼层
    本帖最后由 STM64 于 2017-5-15 16:10 编辑

    今天我们来介绍PHP中变量声明的细节

    不多言い,先来感受一下代码:


    //[size=14.6666669845581px]字符串声明变量$zhifuchuan

    $zhifuchuan = '用开发快开发新产品是一个快捷且高效的途径';

    //可以把这段话放XAMPP指定的目录下,新建一个文件叫kfk.php。然后访问一下http://127.0.0.1/kfk.php试试。看看能否正确输出这句话。

    echo $zhifuchuan;

    ?>


    上述是单引号声明


    再来看看双引号声明,双引号会解析变量,上面的单引号则不
    何为解析变量:

    就是可以在双引号中插入变量 ,变量用空格单独隔开,防止和前后字拼合而造成改变成其他变量造成不必要的bug,空格按着方便,如果不想再显示效果中出现空格,用大括号把变量框起来即可


    <?php

    //声明[size=14.6666669845581px]$str字符串变量

    $str = "[size=14.6666669845581px]用开发快开发新产品是一个快捷且高效的途径";

    echo $str;
    ?>


    双引号能解析变量,双引号中套的单引号里的变量也会被解析,如果用不到变量,用单引号运算效率会高一些

    还有一种字界符方法:

    <?php

    $kfk = <<<KFK
      [size=14.6666669845581px]用开发快
    [size=14.6666669845581px]开发<br />
    <i>[size=14.6666669845581px]新产品</i>
    [size=14.6666669845581px]是一个<h1>[size=14.6666669845581px]快捷且高效的途径</h1>
    KFK;
    ?>
    字界符效果跟双引号差不多,

    对了,用.可以把字符串连起来

    学了这么多,我们来试试:

    <?php
    //声明变量$kfk
    $kfk = '开发快非常好用';
    //在双引号中放$kfk 然后echo 一下能显示吗?
    $str = "$kfk 能显示吗?";
    //用$str显示看看
    echo $str;
    ?>
    可以看到都能显示出来,

    然后我们改一下代码看看

    [size=14.6666669845581px]<?php
    [size=14.6666669845581px]//声明变量$kfk
    [size=14.6666669845581px]$kfk = '开发快非常好用';
    [size=14.6666669845581px]//在双引号中放$kfk 然后echo 一下能显示吗?
    [size=14.6666669845581px]$str = '$kfk 能显示吗?';
    [size=14.6666669845581px]//用$str显示看看
    [size=14.6666669845581px]echo $str;
    [size=14.6666669845581px]?>

    可以看到$kfk被直接显示,而不是这个变量里面的值

    这样能感受到单双引号的区别了吧




    stm32,FPGA
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2017-9-16 10:56
  • 签到天数: 127 天

    [LV.7]常住居民III

    311

    主题

    1649

    帖子

    5940

    积分

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    5940
    QQ
    发表于 2017-5-15 16:19:34  | 显示全部楼层
    #上一楼层中size=多少都被显示出来了,可能编辑次数过多,我重新开一层,看到[]里的这些请忽略,这是修改字符显示大小的超文本



    我们再来做试验:

    这次是变量前后没加空格或大括号的后果测试,感受一下,会产生什么变化:


    <?kfk
    $kfk = '开发快很好用';

    $str = "$kfkhenhaoyong";

    //你会发现在输出$str后,什么东西都没有在页面中显示出来

    echo $str;

    ?>



    第二次提醒:PHP编程语句的每句句末最好加上英文分号;  

    保持这个习惯将会很受益;

    注释后面加上这个也没关系,喜欢就好;



    我们再改一下:

    加空格分开:


    [size=14.6666669845581px]<?kfk
    [size=14.6666669845581px]$kfk = '开发快很好用';

    [size=14.6666669845581px]$str = "$kfk  henhaoyong";

    [size=14.6666669845581px]//你会发现在输出$str后,什么东西有在页面中显示出来,哈

    [size=14.6666669845581px]echo $str;

    [size=14.6666669845581px]?>




    [size=14.6666669845581px]输出了:   [size=14.6666669845581px]开发快很好用  henhaoyong

    stm32,FPGA
    回复 支持 反对

    使用道具 举报

    发表回复

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    关于我们
    开发快官网
    关于我们
    联系我们
    帮助中心
    开发者中心
    快速入门
    视频教程
    社区活动
    免费开发板
    开发者大赛
    关注我们
    官方微博
    官方空间
    快速回复 返回顶部 返回列表

    湘公网安备 43019002000310号