Loading

邢栋博客

php实现单链表

<?php class node{ //初始化变量,包括存储的内容和下一个数据的指针 public $id = 0; public $data = ''; public $next = null; //构造函数,设置存储内容的数据 public function __construct($id,$nodedata){ $this->id = $id; $this->data = $nod...

php使用mongo的GridFS存储文件

<?php //php使用mongo的GridFS存储文件 $conn = new MongoClient(); $db = $conn->photos; $collection = $db->getGridFS(); //存储文件 $id = $collection->storeFile('./logo22.png'); //存储文件二进制流 // $data = file_get_contents('./logo22.png'); // $id = $co...

回顾mongo索引

测试索引 新建50万条数据 for(var i=0;i<500000;i++){db.myusers.insert({"i":i,"username":"user"+i,"age":Math.floor(Math.random()*120),"created":new Date()});} db.myusers.find({username:"user111"}).explain(true) { ............ "executionStats" : { "executionSuccess" : true, "nRetur...

温习memcache

memcached 启动参数 memcached -m 64 -vv -d 守护进程 -p 指定端口号 默认 11211 -m 指定最大使用内存大小 默认 64m -t 线程数 默认4 -l 连接的ip地址 ,默认是本机 -M 内存耗尽时返回错误,而不是删除项 -c 最大同时连接数 默认 1024 -f 块大小增长因子,默认是1.25 -n 最小分配空间,key+value+flags 默认是48 -vv 详细信息 还打印客户端命令/响应 -I 重写每个数据页尺寸。调整数据项最大尺寸 -R 通过限制某个连接可以连接提交的命令数,以避免其他连接等待时间过久...

http的request和response介绍

http request 1.request line GET /dir/1.html HTTP/1.1 请求方法 资源位置 协议版本 2.HTTP HEADERS 通用header 请求header 实体 header 3.Content request method HTTP/1.1规范中的8个请求方法 1.GET url长度有限制 2.POST 3.HEAD 4.PUT //201 5.DELETE 6.TRACE 7.OPTIONS 8.CONNECT request headers Accept: text/htm...

php实现http401授权

<?php //unset($_SERVER['PHP_AUTH_DIGEST']); $username = 'xingdong'; //用户名 $userpass = '123456'; //面膜 $secret = 'xingdong365'; //秘钥 $realm = '401test'; $opaque = md5($secret.$_SERVER['HTTP_USER_AGENT'].$_SERVER['REMOTE_ADDR']); if (!isset($_SERVER['PHP_AUTH_DIGEST']) || emp...

SELECT和EPOLL模式

SELECT和EPOLL模式 select模式 1.应用层首先初始化FD_SET(填入需要检测的socket集合),然后调用select函数 2.内核对FD_SET包含的所有socket进行了逐个检测,如果某个socket有状态发生,则填入内容分配一个数组,当所有socket都检查完成后,再将该数组copy到FD_SET中,然后返回应用层 3.select调用返回,应用层从返回的FD_SET中提取有状态发生的socket,并根据socket值映射客户端上下文(可以通过map或hash_map实现映射),然后处理收到的数据 epoll模式 1.应用层调用 ...

php代码执行过程简述

php代码的执行过程 扫描->解析->编译->执行->输出 1.扫描(scanning) 将index.php内容变成一个个语言片段(token) <?php $code =<<<'PHP_CODE' <?php //这是注释 echo "hello world\n"; $data = 1+1; eval("echo 'Inception lvl 1...\n';"); echo $data; PHP_CODE; echo "<pre>"; print_r(token_get_all($c...

linux中awk命令的简单介绍和使用

1.字段以:分隔,打印第一列 awk -F":" '{print $1}' /etc/passwd 2.字段以:分隔,打印第一列和第三列 awk -F":" '{print $1 $3}' /etc/passwd awk -F":" '{print $1":"$3}' /etc/passwd 3.文件形式的执行 vim test.awk 写入 BEGIN {FS=":"} {print $1} awk -f test.awk /etc/passwd 4.普...

linux中sed命令的几个简单事例

删除文件中1-10行的数据 sed -e '1,10d' ./myfile.txt 删除文件中以#开头的行,即删除注释 sed -e '/^#/d' ./myfile.txt 将每行第一次出现的xingdong替换成action sed -e 's/xingdong/action/' ./myfile.txt 将每行所有的xingdong替换成action sed -e 's/xingdong/actio/g' ./myfile.txt 把结果存储到文件 sed -e 's/xingdong/actio/g' ./myfile.txt > ./ne...