一个PHP的UDP函数
//如果$waitAckSec为0,则返回成功发送的字节数
//如果$waitAckSec大于0,则返回发送后接收到的内容
//任何情况下,失败都返回FALSE
function SendUDP($host, $port, $buff, $waitAckSec=0)
{
$result = FALSE;
$socket = ($result=@socket_create(AF_INET, SOCK_DGRAM, SOL_UDP));
if ($socket)
{
$result = @socket_sendto($socket, $buff, strlen($buff), 0, $host, $port);
if ( $waitAckSec>0 )
{
$result = FALSE;
$read = array($socket);
$write = NULL;
$except = NULL;
if ( @socket_select($read, $write, $except, $waitAckSec) > 0 )
{
$fromHost = '';
$fromPort = 0;
@socket_recvfrom($socket, $result, 3, 0, $fromHost, $fromPort);
}
}
@socket_close($socket);
}
return $result;
}
相关文档:
一、问题起源
稍大一些的网站,通常都会有好几个服务器,每个服务器运行着不同功能的模块,使用不同的二级域名,而一个整体性强的网站,用户系统是统一的,即一套
用户名、密码在整个网站的各个模块中都是可以登录使用的。各个服务器共享用户数据是比较容易实现的,只需要在后端放个数据库服务器,各个服务器通过统一接
......
如果估计没错,在 PHP 语言中,使用最多的运算符号当数点运算符号“.”,使用最多的语句当数“echo”。不难理解,PHP 的目标就是生成超文本脚本,而超文本脚本就是由字符串组成的,所以 PHP 处理最多的数据当是字符串,因此连接字符串的点运算符和输出字符串的语句“echo&rdqu ......
<?php
@mysql_connect("localhost", "root","1981427") //选择数据库之前需要先连接数据库服务器
or die("数据库服务器连接失败");
$dbs = mysql_list_dbs(); //调用mysql_list_dbs函数
while ($array = mysql_fetch_row($dbs)) //循环输出所有的数据库名称
{
echo "$array[0]<BR>";
}
?>
& ......
PHP
处理对象部分的内核完全重新开
发过,提供更多功能的同时也提高了性能。在以前版本的
php
中,处理对象和处理基本类型
(数字,字符串)的方式是一样的。这种方式的缺陷是:当将对象赋值给一个变量时,或者通过参数传递对象时,对象将被完全拷贝一份。在新的版本里,上述操作
将传递引用(可以把引用理解成对象的 ......
function multi($num, $perpage, $curpage, $mpurl) {
$multipage = '';
$mpurl .= strpos($mpurl, '?') ? '&' : '?';
if($num > $perpage) {
$page = 10;
$offset = 5;
$pages = @ceil($num / $perpage);
if($pag ......