博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
初识PHP
阅读量:6657 次
发布时间:2019-06-25

本文共 1831 字,大约阅读时间需要 6 分钟。

hot3.png

对我来说,本来大部分事情都能用Python去做的,但是就因为流行度的问题,经过几番考虑,又选择了另外再学习一门动态语言——PHP。

下载下来官方打包的PHP的绿色版后吓了一跳

原来官方打包的东西里就附带了这么多常用的现成的库了,本来以为还要像Python一样到处找第三方库呢,哈哈。

windows下好像没有php-fpm,生产环境部署的时候可能要折腾那么一下子了。启动方式如下:

D:\php>php-cgi.exe -b 127.0.0.1:9000

配合强大的nginx,php就可以开始工作了,附带nginx.conf配置如下:

worker_processes  1;events {    worker_connections  1024;}http {    include       mime.types;    default_type  application/octet-stream;    sendfile        on;    keepalive_timeout  65;    server {        listen       80;        server_name  localhost;        charset utf-8;        location /static {	    root E:\\projects\\order-manager-system\\src\\;        }        error_page   500 502 503 504  /50x.html;        location = /50x.html {            root   html;        }        location ~ \.php {            fastcgi_pass   127.0.0.1:9000;            fastcgi_index  index.php;            fastcgi_param  SCRIPT_FILENAME  E:\\projects\\order-manager-system\\src\\$fastcgi_script_name;            include        fastcgi_params;        }    }}

经过一段时间的学习,发现php在做web上不是盖的,用php本身的语法来做就很方便了,就是<?php有点打起来麻烦。

稍微研究了下后发现模版的继承可以这么实现,唯一令我担心的是这些变量如何避免require它的外部脚本带来的污染,不知道哪位大大知道怎么保护模版内的变量使其局部化呢?:

/******************main.php*********************/  
<?php echo $title ?>
/****************index.php***********************/

然后就是数据库的长连接,本来以为有哪里对于php的fastcgi模式来说是请求间共享的,这样就可以保存数据库连接而不被销毁了,但貌似没发现,$_GLOBAL里面的好像在请求间也不是共享的。

后来才知道真是绕远路了,pg_pconnect就可以实现。

用php写了一些测试功能后发现它在语言本身并没有落后Pyhon太多,功能做起来都很方便,代码简单清晰,对于web开发大量的功能都内置了。主要是做通讯服务的时候应该不那么给力。

暂时没感觉到灵活性的瓶颈,貌似现在还不需要框架,URL路由部分则是“无耻”地交给了更擅长它的nginx去实现了。

 

转载于:https://my.oschina.net/visualgui823/blog/184625

你可能感兴趣的文章
js获取textarea标签中的换行符和空格。
查看>>
国内的Maven服务器
查看>>
C# winform DataGridView 的18种常见属性
查看>>
Cygwin的安装、配置与调整
查看>>
MySQL存储过程
查看>>
做有中国特色的程序员
查看>>
JVM【第九回】:【OutOfMemoryError异常之本机直接内存溢出】
查看>>
Angular
查看>>
ANTLR Reference书摘
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
《Effective C++第三版》读书笔记——构造/析构/赋值运算
查看>>
Redhat 5.3 Linux内核的升级!
查看>>
Ubuntu Mate:扩展存储到整张SD卡
查看>>
学习使用clojure(1)
查看>>
EXCEL 2010规划求解基础篇
查看>>
es学习5-slowlog
查看>>
nf_conntrack: table full, dropping packet
查看>>
Linux的五个查找命令:find,locate,whereis,which,type
查看>>
KK课表抓取教务系统
查看>>