php

更新日期: 2016-05-20 阅读次数: 4576 分类: PHP

Hello World

新建一个 index.php 文件

<html>
 <head>
  <title>PHP Test</title>
 </head>
 <body>
 <?php echo '<p>Hello World</p>'; ?> 
 </body>
</html>

使用 PHP 内置 web server 进行本地开发调试

只需要在代码目录执行

php -S localhost:8000

即可在浏览器里看到首页内容了。参考 Built-in web server

生产环境配置

新增一个 nginx 配置文件 php-firefly.conf

server {  
    listen 80;  
    #listen [::]:80 default_server;  

    root /Users/zhongwei/work/php-firefly/src;
    index index.html index.php;  
    server_name localhost;  

    location ~ \.php$ {  
        include fastcgi_params;  
        fastcgi_split_path_info ^(.+\.php)(/.+)$;  
        fastcgi_pass unix:/var/run/php5-fpm.sock;  
        fastcgi_index index.php;  
    }  
}

php-fpm 的配置文件对应的更新成

listen = /var/run/php5-fpm.sock;

如果遇到访问 http://localhost 返回空页面,并且nginx,php-fpm 都没有对应的错误日志时,参考

nginx + php5-fpm doesn't work properly. I see a white screen only - Unix & Linux Stack Exchange

在 nginx 的 fastcgi_params 文件里增加一行

fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

即可

PHP里的双冒号 :: 范围解析操作符与箭头 -> 操作符 在应用上的区别在哪里?

双冒号一般是用在静态方法、静态变量的调用,此时类不需要实例化。而是用箭头操作符- > 时,必须要将类进行实例化(或者在类的内部调用也可以。)

array

php 的 array,不同于我之前接触的其他语言的 array,例如,c 和 js。php 的 array 更像一个万能收纳盒,啥都可以放,怎么放都行。过于灵活,当然这里是贬义。她兼具了 python 的 list 和 dict 的功能,所以称之为 array 具有极大的诱导性。

我感觉将其按照 python 的 list 和 dict 来分别理解更容易消化吸收。

作为 list

初始化

$arr = array(1, 2, 3);

虽然 php 5.4 之后支持了 [], 但是,为了兼容性,还是用 array 比较省心,何况我使用了 vim snippets, 对我来说没有任何负担。

Append item

$arr[] = 1;

这个语法非常怪异,可读性为0,差评。

Del item

unset($arr[0]);

需要注意的是,unset 之后,array items 的 index 并不会重排。

作为 dict

没啥特别之处

教程及参考

关于作者

我是来自山东烟台的一名开发者,喜欢瞎折腾,顺便记记笔记。有敢兴趣的话题,欢迎加微信 zhongwei 聊聊。 白天工地搬砖,晚上哄熊孩子,可能回复有点慢,见谅。 查看更多联系方式

相关文章

爱评论不评论

近期节日

2019年12月07日 大雪
2019年12月09日 "一二九"运动纪念日
2019年12月09日 世界足球日
2019年12月10日 世界人权日
2019年12月12日 西安事变纪念日
2019年12月13日 南京大屠杀
2019年12月20日 澳门回归日
2019年12月21日 国际篮球日
2019年12月22日 冬至
2019年12月24日 平安夜
2019年12月25日 圣诞节
查看更多节日