ʹÓÃlinux¹²ÏíÄÚ´æµÄʵÏÖµÄphpÄÚ´æ¶ÓÁÐ
<?php
/**
* ʹÓù²ÏíÄÚ´æµÄPHPÑ»·ÄÚ´æ¶ÓÁÐʵÏÖ
* Ö§³Ö¶à½ø³Ì, Ö§³Ö¸÷ÖÖÊý¾ÝÀàÐ͵Ĵ洢
* ×¢: Íê³ÉÈë¶Ó»ò³ö¶Ó²Ù×÷,¾¡¿ìʹÓÃunset(), ÒÔÊÍ·ÅÁÙ½çÇø
*
* @author wangbinandi@gmail.com
* @created 2009-12-23
*/
class SHMQueue
{
private $maxQSize = 0; // ¶ÓÁÐ×î´ó³¤¶È
private $front = 0; // ¶ÓÍ·Ö¸Õë
private $rear = 0; // ¶ÓβָÕë
private $blockSize = 256; // ¿éµÄ´óС(byte)
private $memSize = 25600; // ×î´ó¹²ÏíÄÚ´æ(byte)
private $shmId = 0;
private $filePtr = './shmq.ptr';
private $semId = 0;
public function __construct()
{
$shmkey = ftok(__FILE__, 't');
$this->shmId = shmop_open($shmkey, "c", 0644, $this->memSize );
$this->maxQSize = $this->memSize / $this->blockSize;
// Éê請Ò»¸öÐźÅÁ¿
$this->semId = sem_get($shmkey, 1);
sem_acquire($this->semId); // ÉêÇë½øÈëÁÙ½çÇø
$this->init();
}
private function init()
{
if ( file_exists($this->filePtr) ){
$contents = file_get_contents($this->filePtr);
$data = explode( '|', $contents );
if ( isset($data[0]) && isset($data[1])){
$this->front = (int)$data[0];
$this->rear = (int)$data[1];
}
}
}
public function getLength()
{
return (($this->rear - $this->front + $this->memSize) % ($this->memSize) )/$this->blockSize;
}
public function enQueue( $value )
{
if ( $this->ptrInc($this->rear) == $this->front ){ // ¶ÓÂú
return false;
}
$data = $this->encode($value);
shmop_write($this->shmId, $data, $this->rear );
$this->rear = $this->ptrInc($this->rear);
return true;
}
public function deQueue()
{
if ( $this->front == $this->rear ){ // ¶Ó¿Õ
return false;
}
$value = shmop_read($this->shmId, $this->front, $this->blockSize-1);
$this->front = $this->ptrInc($this->front);
return $this->decode($value);
}
private function pt
Ïà¹ØÎĵµ£º
Service Discovery Protocol(SDP)ÌṩһÖÖÄÜÁ¦£¬ÈÃÓ¦ÓóÌÐòÓз½·¨·¢ÏÖÄÄÖÖ·þÎñ¿ÉÓÃÒÔ¼°ÕâÖÖ·þÎñµÄÌØÐÔ¡£
·þÎñ·¢ÏÖÐÒé(SDP»òBluetooth SDP)ÔÚÀ¶ÑÀÐÒéÕ»ÖжÔÀ¶ÑÀ»·¾³ÖеÄÓ¦ÓóÌÐòÓÐÌØÊâµÄº¬Ò⣬·¢ÏÖÄĸö·þÎñÊÇ¿ÉÓõĺÍÈ·¶¨ÕâЩ¿ÉÓ÷þÎñµÄÌØÕ÷¡£SDP¶¨ÒåÁËbluetooth client·¢ÏÖ¿ÉÓÃbluetooth server·þÎñºÍËüÃǵÄÌØÕ÷µÄ·½·¨¡£ ......
×î½ü¹¤×÷·¶³ëÓÉÔÀ´µÄ.netÇл»µ½ÁËphp£¬×ÛºÏÕâ¶Îʱ¼äµÄÈÏÖª£¬¾õµÃÔÚphpÕâ¸öÌåϵÖÐMVCģʽδ±ØÊÇÒ»¸öºÃ¶«Î÷¡£
´ÓijÖÖÀíÂÛÉÏÀ´Ëµ,MVCȷʵ¿ÉÒÔÈÃϵͳ¸üÇåÎúºÍ¸üÃ÷ÁË¡£
µ«ÊÇÒ»¸öºÜÖØÒªµÄÒ»µãÒ²´æÔÚÁË£¬MVCÈÃÒ³Ãæ¸ü¶àÁËÆðÀ´£¡£¡£¡ÕâµãºÜÖØÒª
PHPÔÚûÓÐÒ»¸ö±È½ÏºÃµÄIDEµÄÖ§³ÖÏ£¬Ò³ÃæÌø×ªºÍÇл»ÊµÔÚÊǷdz£²»·½±ã¡£
ûÓÐÒ»¸öºÃ ......
¼Ì³ÐÌØÐÔ¼ò»¯Á˶ÔÏó£¬ÀàµÄ´´½¨£¬Ôö¼ÓÁË´úÂëµÄÖØÓÃÐÔ¡£µ«ÊÇPHPÖ®Ö§³Öµ¥¼Ì³Ð¡£Èç¹ûÏëʵÏÖ¶à¼Ì³ÐµÄ»°¾ÍÒªÓõ½PHPµÄ½è¿Ú¡£PHP¿ÉÊÇʵÏÖ¶à¸ö½Ó¿Ú¡£
²»ÒªÓÃpublicÒÔÍâµÄ¹Ø¼ü×ÖÀ´ÐÞÊνӿÚÖеÄÀà³ÉÔ±¡£¶ÔÓÚ·½·¨£¬²»Ð´¹Ø¼ü×ÖÒ²¿ÉÒÔ¡£ÕâÊÇÒ»¸ö½è¿ÚÀà×ÔÉíµÄÌìÐÔ¾ö¶¨µÄ¡£ÄÇôÎÒÏëËûÊÇÎªÊ²Ã´ÄØ£¿
¶ÔÓÚ½Ó¿ÚÀ´Ëµ£¬Ëü²»ÄÜÓÃprotected,ºÍpr ......
ÔÚʵ¼Ê¿ª·¢¹ý³Ì»á¾³£»áÓöµ½Ò»Ð©Öظ´µÄ²Ù×÷£¬Èç¹ûÿ´Î¶¼Òª×Ô¼ºÈ¥ÊµÏÖÕâÎÞÒɼÓÖØÁË×Ô¼ºµÄ¹¤×÷Á¿£¬ÏÂÃæ¶ÔһЩ¿ÉÄܾ³£Óõ½µÄÀà×ö¸öÕûÀí£º
ͼ±í¿â
ÏÂÃæµÄÀà¿â¿ÉÒÔÈÃÄãºÜ¼òµ¥¾ÍÄÜ´´½¨¸´ÔÓµÄͼ±íºÍͼƬ¡£µ±È»£¬ËüÃÇÐèÒªGD¿âµÄÖ§³Ö¡£
pChart - Ò»¸ö¿ÉÒÔ´´½¨Í³¼ÆÍ¼µÄ¿â¡£
Libchart - ÕâÒ²ÊÇÒ»¸ö¼òµ¥µÄͳ¼ÆÍ¼¿â¡£
JpGraph - Ò» ......
phpÖÐʵÏÖ¶àÏß³Ì
PHPÖÐʵÏÖ¶àÏß³Ì? ¿´µ½Õâ¸ö±êÌâ ÄãÒ»¶¨ÒÔΪÎÒ·èÁË..µ«ÊÇÊÂʵÉÏÎÒÕæµÄÕâô×öÁË.
ÏÂÃæÊÇÎÒµÄһЩ×ö·¨ ÒѾʵÑé¹ý. ȷʵ¿ÉÒÔµÄ.
ÎÒÃÇÖªµÀPHP±¾ÉíÊDz»Ö§³Ö¶àÏß³ÌµÄ µ«ÊÇÎÒÃǵÄWEB·þÎñÆ÷ÊÇÖ§³Ö¶àÏ̵߳Ä.
Ò²¾ÍÊÇ˵¿ÉÒÔͬʱÈöàÈËÒ»Æð·ÃÎÊ. ÕâÒ²ÊÇÎÒÔÚPHPÖÐʵÏÖ¶àÏ̵߳Ļù´¡.
¼ÙÉèÎÒÃÇÏÖÔÚÔËÐеÄÊÇa.phpÕâ¸öÎ ......