DHT22 是一款温度与湿度传感器,Arduino 下使用 DHT22 推荐使用这个库
Arduino 与 ENC28J60 端口连接
Arduino UNO
VCC - 3.3V GND - GND SCK - Pin 13 SO - Pin 12 SI - Pin 11 CS - Pin 10
Arduino MEGA
VCC - 3.3V GND - GND SCK - Pin 52 SO - Pin 50 SI - Pin 51 CS - Pin 53
PHP Web Server Demo
纯 Demo Web Server,一切 Web 请求均返回 HelloWorld 作为响应
<?php $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); socket_bind($socket, "0.0.0.0", 9501); socket_listen($socket, 5); for(;;) { $client = socket_accept($socket); $buffer = socket_read($client, 2048); socket_write($client, "HTTP/1.1 200 OK\r\n"); socket_write($client, "Transfer-Encoding: chunked\r\n"); socket_write($client, "\r\n"); socket_write($client, "HelloWorld\r\n"); socket_close($client); } socket_close($socket); |
PHP Socket Server Demo
代码功能:在本地开一个 TCP 9501 端口,等待客户端连接,客户端连接上来之后,向客户端发送一个 HelloWorld,然后关闭这个连接,等待下一个客户端的连接。
<?php $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); socket_bind($socket, "0.0.0.0", 9501); socket_listen($socket, 5); for(;;) { $client = socket_accept($socket); socket_write($client, "HelloWorld\n"); socket_close($client); } socket_close($socket); |
JavaScript WebSocket Client Demo
纯 Demo 代码,和当年 XMLHttpRequest 似的,裸调 WebSocket:
var socket = new WebSocket('ws://localhost:9501'); socket.onopen = function(event) { socket.send('HelloWorld!'); socket.onmessage = function(event) { console.log('Client received a message', event); }; socket.onclose = function(event) { console.log('Client notified socket has closed', event); }; //socket.close(); }; |
更换 Laravel 内置服务器监听端口
正常情况下,使用 php artisan serve
启动 Laravel 内置服务器,将会监听在 localhost 的 8000 端口上
$ php artisan serve Laravel development server started on http://localhost:8000
假如我们希望更换监听的接口地址或端口号,可以使用 --host
参数与 --port
参数
$ php artisan serve --host=0.0.0.0 --port=8080 Laravel development server started on http://0.0.0.0:8080
CentOS 6安装PHP pdo_dblib扩展
第一步:先安装freetds及相关库
yum install freetds freetds-devel yum install php-devel yum install gcc yum install re2c
第二步:下载php源码及编译php_dblib扩展
wget http://cn2.php.net/get/php-5.4.32.tar.bz2/from/this/mirror tar jxvf php-5.4.32.tar.bz2 cd php-5.4.32/ext/pdo_dblib/ phpize ./configure --with-libdir=lib64 make make install
第三步:载入PHP的sybase扩展
cd /etc/php.d vim pdo_dblib.ini extension=pdo_dblib.so
CentOS 6安装PHP sybase_ct扩展
第一步:先安装freetds及相关库
yum install freetds freetds-devel yum install php-devel yum install gcc yum install re2c
第二步:下载php源码及编译sybase扩展
wget http://cn2.php.net/get/php-5.4.32.tar.bz2/from/this/mirror tar jxvf php-5.4.32.tar.bz2 cd php-5.4.32/ext/sybase_ct/ phpize ./configure --with-sybase-ct=/usr make make install
第三步:载入PHP的sybase扩展
cd /etc/php.d vim sybase_ct.ini extension=sybase_ct.so
PHP Composer对PHP扩展的检测
在有些使用 Composer 做包管理的 PHP 项目中,项目代码可能会用到 PHP 的扩展类或函数,如果没有的话就无法正常运行,Composer 同样支持 PHP 扩展的检测,使用方法和普通包非常类似,在 composer.json 加上相应配置段即可
"require": { "ext-curl": "*" }
此时如果系统内没有 curl 扩展的时候 Composer 就会有提示:
Problem 1 - The requested PHP extension ext-curl * is missing from your system.
Ubuntu下安装PHP Mcrypt扩展
在 Ubuntu 下运行 Laravel 项目时,遇到如下提示:
Loading composer repositories with package information Installing dependencies (including require-dev) from lock file Nothing to install or update Generating autoload files Mcrypt PHP extension required. Script php artisan clear-compiled handling the post-install-cmd event returned with an error
这是由于 PHP 缺少 Mcrypt 扩展的原因,只要根据提示装上,并启用这个模块就可以了。
sudo apt-get install php5-mcrypt
sudo php5enmod mcrypt