cookie 的名称指定为相同名称的变量。例如,如果被发送的 cookie 名为 "name",会自动创建名为 $user 的变量,包含 cookie 的值。
必须在任何其他输出发送前对 cookie 进行赋值。
cookie 的名称指定为相同名称的变量。例如,如果被发送的 cookie 名为 "name",会自动创建名为 $user 的变量,包含 cookie 的值。
必须在任何其他输出发送前对 cookie 进行赋值。
public function insert($data)
{
if(isset($data['content'])&&!empty($data['content']))
{
$data_for_query['content'] = trim($data['content']);
}
else
{
return false;
}
if(isset($data['user_id'])&&!empty($data['user_id']))
{
$data_for_query['user_id'] = intval($data['user_id']);
}
else
{
return false;
}
$sql = "insert into `".$this->table_name."` (".$this->db->implodetocolumn(array_keys($data_for_query)).") values (".$this->db->implodetovalues(array_values($data_for_query)).")";
$this->db->query($sql);
$id = $this->db->lastinsertid();
if(empty($id))
{
return false;
}
else
{
return $id;
}
}
//创建socket服务
$c=stream_socket_server("tcp://127.0.0.1:1100");
while(1)
{
if(is_resource($a=stream_socket_accept($c)))
{
//do something time-consuming
//获取网络socket名称
if(stream_socket_get_name($a,true)!==false)
{
fwrite($a,"regards form berlin");
}
}
}
//以上php为服务端,它将监听消息,直到按下:ctrl+c
while(true)
{
//每5秒执行一次
receive_message('127.0.0.1','85',5);
}
//自定义函数用于获取消息
function receive_message($ips教程erver,$portnumber,$nbsecondsidle)
{
//创建socket
$socket=stream_socket_server('tcp://'.$ipserver.':'.$portnumber, $errno, $errstr);
if(!$socket)
{
//如果创建socket失败输出内容
echo "$errstr ($errno)<br />n";
}
else
{
//如果创建成功则接受socket连接并获取信息
while($conn=@stream_socket_accept($socket,$nbsecondsidle))
{
$message=read($conn,1024);
echo 'i have received that : '.$message;
fputs ($conn, "okn");
fclose ($conn);
}
fclose($socket);
}
}
//server结束
?>
<?php
//以下代码为客户端,它将发送信息并读取回复
send_message('127.0.0.1','85','message to send...');
//自定义函数,发送信息
function send_message($ipserver,$portserver,$message)
{
$fp=stream_socket_client("tcp://$ipserver:$portserver", $errno, $errstr);
if(!$fp)
{
echo "erreur : $errno - $errstr<br />n";
}
else
{
fwrite($fp,"$messagen");
$response = fread($fp, 4);
if($response != "okn")
{
echo 'the command couldn't be executed...ncause :'.$response;
}
else
{
echo 'execution successfull...';
}
fclose($fp);
}
}
代码扩充获取远程主机socket信息*/
function getpeername()
{
$remote_ip=$remote_port=0; //定义ip
socket_getpeername($this->fd,$remote_ip,$remote_port); //返回主机信息
return array($remote_ip,$remote_port); //返回一个数组
}
session_start(), session_register(),session_unregister(),
session_is_registered(),session_destroy函数.
session_start():启用session机制,在需要用到session的程序文件的最开始调用它.
session_register():注册session变量
session_unregister(): 删除session变量(一个一个删除)
session_is_registered(): 判断session变量是否注册
session_distroy(): 销毁所有session变量(所有session变量销毁)
if(is_executable("test.txt")) //对文件进行判断
{
echo "文件可执行"; //输出结果
}
else //如果文件不可执行
{
echo "文件不可执行"; //输出信息
}
函数原型:resource stream_context_create ([ array $options [, array $params ]] )
看个实例
语法
opendir(path,context)
*/
$d=dir("c:windows"); //打开目录,并赋值给变量
echo "handle:".$d->handle."n"; //输出目录的handel属性
echo "<p>";
echo "path:".$d->path."n"; //输出目录的path属性
echo "<p>";
while(false!==($entry=$d->read())) //通过循环读取对象的方法
{
echo $entry."n";
}
$d->close(); //关闭目录句柄
$fp=fopen("test.txt","r");
//以只读方式打开文件,将文件指针指向文件头
$fp=fopen("test.txt","r+");
//以读写方式打开文件,将文件指针指向文件头
$fp=fopen("test.txt","w");
//写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建
$fp=fopen("test.txt","w+");
//以读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建
$fp=fopen("test.txt","a");
//以写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建
$fp=fopen("test.txt","a+");
//以读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建
$fp=fopen("test.txt","wb+");
//以写入方式打开二进制文件,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建
$fp=fopen("c: est est.txt","r");
//在windows平台上,要转义文件路径中的每个反斜线,或者用斜线
$fp=fopen("http://www.domain.com/","r");
//以只读方式打开web地址
$fp=fopen("ftp://username:password@domain.com/test.txt","r");
//与ftp服务器连接,以username和password登录服务器
/*
本实例代码无输出结果
*/
function dir_writeable($dir) //自定义函数扩展功能,建立可写的目录
{
if(!is_dir($dir)) //如果给定的参数不是目录
{
@mkdir($dir,0777); //创建目录
echo "目录".$dir."建立成功!";
}
}
dir_writeable("test"); //调用自定义函数,建立test目录
/*
执行本代码将会在当前目录建立名为:test的目录,同时将输出:
目录test建立成功
*/