讯华有七年的 app 开发经验, app 每天有数以十万计的用户在使用。一、原声 app 可以方便调用各类硬件接口,运行速度更快。二、顺滑持续维护,提供专业的技术支持,提供最新的界面,给客户最爽的体验。伙伴们重点关注业务逻辑的实现。三、极大的降低了开发难度、成本。四 四、支持安装在安卓 pda、 安卓手机等设备上, 开发完成后,我们来看一下效果如何。 标准的 wifi p i 接口返回是全格式,可以用 goline、 c f i、 grapphpvd 等开发,支持 maxqlsql、 siri、 welcomexibxxsql、 艾特等关系型数据库、本地数据库等。
粉丝273获赞445


php 怎么来生成这种精神格式的数据呢?这期视频呢,陶老师要分享的内容呢,就是在追梦儿自动生成的大维码基础上,做适当的修改,生成精神数据, 让前端来进行调用。如果你喜欢陶老师的视频,喜欢可视化来编程设计动态网页,那么欢迎呢点赞加关注啊,到陶老师的主页上观看更多的内容。 接下来呢,切换到追尾里面,新建一个网页,然后呢将里面的代码呢全部清空,我们创建一个记录集,然后筛选呢这三个字段的字,好,然后点击呢确定。接下来呢,我们就需要用到 php 的一个锐志的函数啊,那么用这样一个函数呢,就能够 很方便的生成基层数据。好,我们来新建一行,写上来这六行代码, 那么第一行代码的意思呢啊,是初始化一个空的数组,接下来呢,我们用 will 来进行循环,然后呢使用这样一个函数 来将每一行的数据呢添加到我们这一个数组这个变量中啊,接着呢,我们就开始设置 http 的响应头啊,让它输出节省格式, 并且呢它的制服编码呢是 u t f 八。最后呢,而使用 p h p 的一个含 函数叫做 jason incode 啊,那么用这样一个函数呢,就很轻松的将我们这一个数据库的内容呢,将它转换为了 jason 数据啊,也就是我们现在看到的这样一种格式的数据。

好了,各位,那么继续来学习 note j s 的第三张 n p m 和这个 package 接粉。好,那 n p m 它的全称叫什么? note package manager, 也就是 note j s 的包管理工具。 注意啊,它是一个基于命令行的一个工具啊。对,主要就是帮助我们去在项目中安装这个依赖,那升级啊,就是 c u r d 进行我们这个依赖的一个管理啊。好, 好,那你如果学过其他的编程语言,比如说你学过 p r p, 那就类似于 p r p 的什么 composer 这么一个工具。 如果你学过 java, 那就类似于这个 mering, 如果你学过 python 呢,就类似于这个 pipe, 那你如果学过 rust 的话,它就像这个 cargo。 对,就是每一个编程语呢,其实它都有这个包管理工具。当然我们这个 note 这也是也也不例外啊。对,它叫 n p m。 哦,那么这个 m p m 它怎么去使用呢?这也我们讲过,它是一个基于命令行业的工工具,所以说它是有非常多的命理的。 好,有些常用的命令大家一定要背会啊。好,那么现在展示下第一个 n p m n h。 好,那这的话我是打开了一个空的文件夹,然后我们来写一下这个命令。好,通过 n p m init。 那这个命令是干什么的?去创建一个 packaged gesin, 也就是我们一个项目的一个描述的一个文件啊。好,我们执行一下。 好,那首先呢,他要你创建一个包名 pick the name, 一个包名,这个包名的话,我就先随便给他起一个,比如说叫小满, ok, 然后这个 watch 是一个什么?是一个版本。好,一会我们去详细解释一下这个 watch 啊,我们先给他一个默认, 对,注意这个小括号,他就是一个默认值,一点零点零,我们现在用他的默认值啊,到还有 discription, 就是一个项目的描述,这就是你这个项目或者是这个叉 j, 或者这个包,他要干什么用,你可以去描述一下。对,我这就简单写点东西。啊。 好,还有这个 entry point, 那这也是一个什么你这个项目或者是你这个包的一个入口文件,默认是这个 index 的 g s。 好,那这个的话一会我们来解释一下啊,还有这个 tis command 一个测试的命令,那这个的话就随便了。还有这个 gate repastry, 那这个话什么?这个话这是一个对应的你 get up 的一个仓库的一个地址,你可以贴到这来,我就随便写点东西。好,这个 keyword 是一个什么关键字?比如说你这个项目呢?是干什么用的?比如 说我做了一个什么工具,对,你可以把它类似的一些关键字描述可以去写上去,到时候大家搜的时候呢,就可以通过这个关键词去匹配到,就是可以去搜到你这个包的。哦, 还有这个 author, 就是一个作者这个小马随便写一个。还有这个 license, 它就是一个开源协议,常见的有这个 mit 为宽松协议,还有这个阿帕奇, 就是 mit 的话会居多啊,后面的话我们会详细讲一下这个 license 的。哦,那创建完成之后呢,你就来个 yes 就可以了, 他就会在当前的目录的一个根目录下面去生成一个 package json, 对,生成这么一个文件,其实就是描述你这个项目或者是你这个包,它是用来干什么用的?对,我们可以看到 name, 对,就是这个包名,其实都是对应的我们这个 name, 还有这个 worsion, 我审注页它是三段式的,是吧?一点零点零,好,我们来解释一下这个三段式是干什么的?我们来创建一个 read me, 啊, 对,它是一个什么一点零点零,对吧?好,那首先第一段呢?它是一个这个主版本号。 对,主版本号一般用于什么?就是重大的这个更新或者是 重大的改动,比如说我们这个 v u e, 对吧?比如说 v u e 二升级成什么 v u e 三,对,它这个版本呢?就是从这个什么二点六,是吧?一下子就变成这个什么三点零了,对吧? 二点六点零,我就举个例子,对吧?一下子就从二点六就升级升三点零了,因为他三点零呢,他是有重大的更新的,就些什么底层啊,各种乱七八糟东, 就是变了,非常非常多。那这时候的话就要修定你这个主版本号,要进行一个这个重大的一个升级,也就是这个对着我们这个第一位啊。好,我们来看这个第二位。第二位是什么?次版本号。 这是次版本号一般用于什么呢?用于这个,比如说功能的更新, 对吧?功能的更新,比如说我们这个什么 oe 三,是吧?增加了什么编译红,又新增了很多编译红,对吧?那可能就是什么三点一点零,对吧?他就把这个版本号上去前面升一个级,这就是有些功能的更新呢,他会修订这个次版本号。 好,那第三个是什么?第三个就是修订号,对,修订号一般常用于什么呢?比如说 face 一些 bug, 对吧?比如说有这个我们这个开发人员,哎,提了 这个一数了,对吧?哇,很严重,那这个物业他要进行这个修复,修复完之后呢,他就要发包,是吧?比如说就是什么三点一点一对就证明什么?证明修过这个一个 bug, 对吧?所以说这个话就是他版本号的一个意思啊,就是代表了这个 worship, 那 description 就是我们刚才这个描述,这个闷呢,就是我们这个入口文件,但是我们现在没有这个 gs, 就是比如说当有人要用到我们这个包,或者是用到我们这个插件的时候呢,这个闷呢就会帮我们去找这个 index gs, 那这个东西呢?它还有很多配置,像比如说 type 这个 module, 或者是 common g s, 还有一个什么 model, 还有一个是这个,还有一个是这个对 brother。 好,好,那这四个呢,其实都是跟我们这个模块化是相关的,所以说我们到时候呢去讲这个模块化的时候呢,会去单独讲一下,目前呢大家只需要知道这四个是跟模块化有有关的就可以了。好, 还有注意啊,这个 scraps 呢,这个也是挺重要的,他呢可以帮我们去执行命令或者是运行脚本,那现在的话,我们就可以让他去帮我们去执行这个命令。 注意,那这个命令是怎么执行的呢?需要通过 n p m 一个 run, 对,然后 run 后面这个参数呢?就对应这个 script 的词里边的参数,比如说 test, 对,它就是一个命令,然后我们去执行这个命令, 那执行这个命令之后会干什么?注意就有个 iq 就会输出这么一个字母串,还有这个 excite, 并且呢把这个进程 呢去给它呃,断掉,所以说主要是输出这个 zipper 串就可以了。好,我们来看一下 哦,我们可以看到是不是这个字母串呢?他就是正常的这个输出呢,并且呢把这个进程呢给他断掉了。这两个按的符呢,就是要执行两个命令啊,对,前面的执行完,然后才会执行这个后面的这个命令,当然这里面文字你也可以改一下,比如说什么幺幺幺,对吧? 然后来个杠,好,然后我们再执行一下,他就会输出这个幺幺幺。对,这个 icle 呢,它主要是这个就是输出一段这个座串啊。哦,那这个的话就是一个运行这个命令,当然你也可以去自定义啊,比如说叫什么 小满,对,这名字都是可以去自定义的,比如说 m p m r, 对吧?小满,哦,他就会输出这个幺幺幺。对,我们可以看到,是吧?他是正常输出这个幺幺幺,所以这些里边这些名字都是可以去 随便定一的,当然你也可以去定一个脚本,比如说要执行什么 v u e。 对,我们现在没有,后面的话,我们会去详细去讲一下这个东西的。好,目前大家只需要先了解一下即可。还有这个 repaster, 也比如说你用了什么,用了 get, 是吧?然后它的地址是什么?那这些资料呢?都会显示到这个 n p m 官网上面的, 还有这个作者,还有这个 license。 好,我们可以去看一下,然后你就可以去搜索 n p m g s 点 com, 好,然后比如说我们随便搜一个包啊,随便搜一个 wee, 好,我们来搜索一下, 好,点击这个 v v, 然后你会看到它非常多的信息啊,比如说什么周下载量,对吧?它的一个版本,对吧?我们可以看到这个 repastry, 对吧?它仓库地址就显示到这上面了,其实就是跟我们这是对应的,对,它就会显示到这个 n p 官网上。当然还有这个 home 配置也是可以去配置的,这边可以增加一个,就是这个什么 home 配置,然后配置一个什么地址啊,他也是会给你显示到我们这个 npm 官网上面的, 还有这个什么 license 这个协议看,是吧?一般默认的都是这个 mit。 对,所以说这里边有很多一些信息的,比如还有什么 e 水,对吧?就是这个提出来的问题,或者这些 bug 啊,有六百多个,还有这个 p r 等等这些信息呢,都是可以在上面去看到的。哦,那这个的话就是一个拍根阶层的一个文件的一个简单的描述啊, 哦,以及我们这个 n p m and need 的一个命令。好,然后我们再看接下来的一些命令啊,其实它命令是很多的哦,还有我们这个 n p m msto, 那这个命令呢,也是常用的,比如说我们 想要安装一下他这个 v u e 这个依赖库啊,对,我们要使用 v u e 肯定得先安装嘛,他这里话就提供了一个命令,就是 m p m i v u e i 是什么意思呢? i 就是 install 的一个简写,就是你可以用 n p m i v u e 或者是 n p m install v, 其实意思是一样的,对,只是一个简写而已,就是 n p m i v u e 和 m p m install v u e 其实都是一样的。好,我们来给它安装一下啊,回车,好,我们稍等一下。 好,那我这个 v u e 呢就已经安装完成了。注意,安装这个依赖包之后呢,他会在这个根目录下面给你创建一个 note modules, 注意,这个是正常的,并且呢会给你生成一个 package 杠 look 的 jason, 那这个文件我们下一章呢会去详细的介绍一下,并且呢, 注意啊,他还会在这个拍个 jason 里边会帮你创建一个 dependences, 也就是依赖的一个管理啊,然后会有你这个报名以及他对应的一个版本。呐,对,这个 voe, 但是比如说我想要安装 v u e 二版本怎么办呢?注意,我们这个默认是安装这个最新的三点三点四,是吧?我们来看一下啊, 三点三点四,对吧,但是比如说我这个项目我就想用 v v 二,哎,那怎么办呢?哎,其实也是有办法的,你可以通过 n p m store v u e, 注意,加一个 it 可以安装这个详细的版本,比如说二点六点零,对吧?他就安装这个二了,加一个 it 就可以了。 好,我们来看它这个版本呢,是不是进行一个变化了?对,所以说你需要安装指定的版本呢,你可以通过这个 it 符后面去 跟一个这个东西就可以了。那这个话就是一个非常简单的一个 npn install, 就是安装依赖一个东西。呃,当然既然有安装的,那肯定就是有卸载,那卸载的话就是 npm on install, 然后比如说对应的后面就是苞米 u e, 就把它卸载掉了。好,我们会看见那个 dependences, 它就没有了,那这个话就是一个卸载。那注意啊, n p m in store, 比如说 v u e 有个杠杠 save, 对,杠杠 save, 其实加不加都没有关系,只是在之前的版本不加可能会有问题,但是在 n p m 五点四之后呢?你运行 n p m i v u e, 然后刚刚 sale 加不加其实都没有什么意思的,它会都会把你放到这个 dipanics 里边来,如果是在之前的版本,你如 如果不加杠杠 c, 他是不会给你放进去的,所以说这样的话容易造成这个音量的一个丢失啊。呃,现在的话,我们一般都是这个高版本,所以说其实这两个加不加其实都可以的,但是还有一个命令啊,就是杠杠 c 杠第一位啊,对,杠杠 c 杠第一位。好,我们来运行一下。 好,注意啊,我们这个模块呢,就变成什么 d e v dependences。 好,我们再来一个别的,给大家有个区分吧,比如说我们安装个 m d 五吧,它比较小。 好,我们可以看见有两个,一个是什么 dependences, 还有一个是 dv dependences, 其实还有一个啊, 还有一个是 peer 顶判定 c s。 对,好,这三个,这三个是一个很常用的。好,我们来简单的介绍一下啊, 第一位 dependencies 是是什么意思呢?注意这个是什么呢?我们的开发的依赖都要装到这个第一位 dependences 哦,第一位 dependences 就是什么开发的依赖,对,都要装到这儿 哦,它对应的命令是什么?就是 n p m i 报名,对吧?然后杠杠 sale, 杠第一位。哦,当然它也有一个简写啊。对,它也有一个简写, 对,它也是有一个简写的。简写是什么?也就是 m p m i。 然后是一个什么?是一个苞米,直接一个杠大地就可以了,大地就是杠杠 ceo 杠 dv 的一个 简写,它呢就会帮你装到这个第一位 dependences 里边儿的。好,那什么是开发依赖呢?比如说,对吧?比如说 wire park, 对吧? wiper park 还有什么呢? which 还有这个 rough, 那这些东西呢?其实都算是这个开发依赖。对,因为你上到这个生产环境,你需要这些东西吗?那不需要啊,对吧? 对,生产环境不是不需要这些东西的,所以说 它只是作为一个开发。对,我们要 n p m 什么状 dv 的时候呢?可能会依赖这些模块,或者是 m p m 上 build 把。我们去这个打包的时候呢,可能会依赖这些工具,但是打包完成之后,你还需要它吗?它不需要了,它就没什么用了。 所以说我们只是开发的时候呢?所以说去会装这些东西,所以说所有的开发的依赖呢,都要装到这个 dv 底盘 insist 里边来就可以了。那 v u e 装到这合理吗?其实是不合理的,因为 v u e 呢, 不管是我们开发的还是这个生产的,都需要用到这个 v u e, 所以说它装到这是不合理的。对,它应该是这个 depending sits 里边来。 好,那这儿的话一般有什么?比如说 wipec, 对吧? wipec 在这是非常合理的,对吧?比如说还有什么 wipec, 什么它的一些 c o i。 对,装到这个 d v dependencies 里边是可以的。好,那这个 dependence 呢?其实你也可以理解成是一个这个生产环境所需要的依赖。 对,比如说我们 这个,对吧? v u e 肯定需要,还有什么 v u e x, 对吧?还有什么 v u e router, 对,这些我们这个生产环境是肯定是这个需要的,比如说你写代码的过程中呢?还用到这个 m d 五, 对吧?他也是需要的,所以说生产环境也就是线上所需要的依赖呢?都要装到这个 dependencies 里边来就可以了。啊,还有这个什么屁儿 dependencies, 那这个是干什么的?注意啊,这个其实我们一般用的比较少 啊,这个是一般是什么?给这个编写这个插件的人员,或者是这个, 或者是编写这个 m p m 包的开发人员去使用的。对,一般是给这类人员去使用的,比如说我们用到了什么 wait, 对吧? with, 他提供这个 plugging, 他提供这个插件,就比如说我写了一个东西。啊,这给大家举个例子啊,好,我们这些先不要了。对,我写了一个位的插件,叫什么?呃, which gun plugging? 杠小满,举个例子啊。好, 然后版本号是一点零点零。对,我写了个是这个插件,那你说这个插件他可以凭空运行吗?那显然是不可以凭空运行,因为他什么,那他要基于 wit, 对,他是 wit 上面的一个插件,所以说那怎么办呢?那这的话要有一个位置, 对,我就随便写一个,比如说二点零。好,那意思是什么意思呢?意思就是他就是一个同等依赖的一个意思啊。对等也可以叫对等依赖,对,叫对等依赖。也就 是说你安装我这个插件,必须呢也要把这个 wit 装下来,因为他是不可能凭空运行的,他需要依赖这个 wit 一个宿主的一个环境。对,就是我们这个插件呢,是不能凭空运行的。 对,需要依赖我们这个依赖宿主的环境。那我们这个 wait plugin 呢?是能依赖这个 wait。 对,所以说你要安装我这个插插件,那你必须要把这个 wait 也安装下来,那这个的话就是一个 pure dependences 的一个意义, 这本来他也不可能凭空运行,所以说你一定要按照这个啊。第二点就是这个防止安装这个重复的一个依赖啊。啊,如果你放到 dp 这次里边来,那人家如果用户已经装过未成,你又给人家装了一遍,那不就有问题了吗?所以说一般的话都会写到这个片底盘, 比如说你要开发什么 wific 插件,那你就把这个换成 wific, 对吧?上面就什么 wific plug, 对吧?就是,道理呢,都是一个道理的啊。那这个的话就是 pack 的节省里面的信息的一个详解啊。好,然后我们再看一下这个 n p m 些别的命令。对, m p m 命令是非常多的,然后我们再讲一些啊, 好,呃,有一些命令是非常重要的,就是跟着小马学,一定要把这个命令给我背会啊,就是 m p m configure list。 对,这个命令一定要背会,这个命令很重要, 它呢可以查看 n p m 或者是 no 的一些版本,比如说 no 的 worsen, n p m 的 worsion 以及 n p m 所在目录的一个位置, no 的可执行目录的一个位置,还有我们这个什么根目录啊,以及所有的信息呢,都是在这里边的,以及什么还有 n p m 圆的一些信息,对,它都是在这个文 这里边的,所以说这个命令一定要给我背会,就是去查错的时候是非常好用的。哦,那第二个命令,什么第二命令就是注意我们现在使用的什么 mpm 官网的一个镜像源,由于这个地址是国外的,所以说我们 mpm install 是吧?下载什么依赖的时候它会很慢, 就是因为走的是这个国际的一个线路,他会非常非常慢,所以说就出现了一些非常多的代理啊,比如说淘宝进项, 我们就会把这个路径的换成一个淘宝的路径,那淘宝呢?去连接这个国际线路是非常快的,所以说就出来了非常多的镜像,比如说一些著名的什么淘宝镜像,什么中科大,什么清华大学的, 他们是专门接的这个国际线路,所以说我们通过他们的代理呢,是下载这个依赖数呢,是非常非常快的。好,那这的话来演示一下这个如何去切换我们这个圆,或者是 查看这个元,首先通过 m p m get 这个 ready three 就可以去获取我们这个镜像元,其实 config 里边也可以看到,如果 config 里边看不到的话,可以使用这个 get 迷你,我们可以看到对,它就是一个 n p m 默认的一个元。好,你要想设置它的话,就可以通过 n p m config set 这个 registry 后面跟一个地址,比如说 h t t p 末号杠杠, 什么淘宝点叉叉叉是吧?这的话我是给大家随便举个例子,好,要模仿我随便举个例子,好,这样的话就已经设置完成了,设置完成之后我们再来获取一下, 好发现原呢已经变成是我这个自定的。呃,注意下,这个是返不了,我只是举个例子,到时候你们可以去搜索一下这个淘宝的原,或者什么清华的原什么什么。好,现在的话 把它这个换回来啊。 好,然后再获取获取一下, 那就已经是换回来了,所以说你可以通过这个 get registry 和这个 m p m config set registry 去设置这个呃,多音的元就可以了。当然你也可以去下载一个工具,比如说 m p m i 小买 z s 杠 g, 那这个的话就是我为了方便大家去切换这个圆,去写了一个工具包啊。好,大家去直接装一下就可以了。这个杠 g 是什么意思呢?杠 g 就是杠,杠就是 global 的意思,就是装到全局的一个意思啊,我们到时候会详细讲一下这个 global 的,然后大家就按按照这个去执行就 可以了。好,装完之后呢,会有一个 m m p 这个命点,然后杠 v 可以看一下这个版本号啊,哦,是杠大 v。 对一点,五点一。对,这是我写的一个包啊,你可以用 m m p current 对去查看当前的一个远 对,当前的语言呢,是 n p m。 哎,对,我写的这个包呢,纯中文的。然后你可以通过 m m p m m p use 去切换元,就比如说切换什么,这不是淘宝的吗?或什么腾讯的 c m p m 都可以在这儿去切换,比如说我们切换到这个淘宝上面儿。 好,切换完成之后呢,我们再通过这个 get register 去获取一下, 发现他是不是已经变了, 所以说大家可以去安装一下我这个包就可以了。去帮你去可以快速的切换这个镜像,然后我们可以把它再切回来,比如说 m p m。 好,哎,点错了,然后我们再把这个 get 这个给它复制一下,我们再看一下它是否切回来了。 ok, 也是切回来。当然你也可以去自定义啊,比如说 m m p id, 对吧?你也可以去自定义,比如说你们公公司呢?有这个。呃,自定义的这个 m p m 这个镜像服务,是吧?你可以去给它自定义这名称啊, 或者和一个什么计算地址,哎,就给你添加进去了,添加进去之后你就通过 m m p u 就可以去切换了,对吧?比如说什么?这个是我刚添加的,对吧?那现在肯定是有问题,这我随便写了,我还是给它切回去吧。好,然后我再 check 一下。 对,又变回来也是没有问题的。对,这个的话是如果你们公司,比如说京东呢,它就有这个 g m p m, 我就可以把它添加进去,然后用我这个插件去给它切换就可以了。哦,那还有一些命令,什么比如说 m p m logging 这个 ology 呢?你必须要有这个 np 的账号,你可以去注册一个,这个是非常有用的。对,然后他会让你上这个什么呃,密账号密码以及邮箱验证码。对,我这个可能登录过了,我就不需要再登录了啊,登录完成之后,你可以通过 npm publish, 对这个的话就可以把你这个依赖包呢去给它发到这个 n p m 上面。对,也就是它会根据你这个拍个 jason 的描述文件去给它进行这个发包的,到时候我们会去详细讲一下这个命令,目前只需要这个 了解一下即可。好,那以上的话这些就是一些 m p m 常用的一些命理,以及拍个这阶层一个讲解啊。

