php入门教程六(php实现连接ftp服务器与IMAP服务器)
用php教程实现连接服务器,还有实现连接imap服务器,最后通过php编写的代码来实现上传和下载文件
代码如下 | 复制代码 |
<?php |
邮件发送函数mail
代码如下 | 复制代码 |
<?php mail( "163@111cn.net", "欢迎你", "hello,你好! " ); ?> |
代码如下 | 复制代码 |
<?php //连接imap服务器 $mbox = imap_open("{imap.example.org}", "username", "password", op_halfopen) or die("连接失败: " . imap_last_error()); $list = imap_getmailboxes($mbox, "{imap.example.org}", "*"); if (is_array($list)) { foreach ($list as $key => $val) { echo "($key) "; echo imap_utf7_decode($val->name) . ","; echo "'" . $val->delimiter . "',"; echo $val->attributes . "<br />n"; } } else { echo "imap_getmailboxes 失败: " . imap_last_error() . "n"; } //关闭imap连接 imap_close($mbox); ?> |
连接ftp服务器
代码如下 | 复制代码 |
<?php // 连接ftp服务器 // 上传文件 // 关闭ftp连接 |
ftp文件上传下载功能
代码如下 | 复制代码 |
<?php $file = 'somefile.txt'; $remote_file = 'readme.txt'; // 连接ftp服务器 $conn_id = ftp_connect($ftp_server); //使用用户名、密码登陆 $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass); //上传文件 if (ftp_put($conn_id, $remote_file, $file, ftp_ascii)) { echo "成功上传 $file 文件n"; } else { echo "上传 $file 文件失败n"; } // 关闭ftp连接 ftp_close($conn_id); ?> |
ftp删除文件
代码如下 | 复制代码 |
<?php $file = 'public_html/old.txt'; // 连接ftp服务器 $conn_id = ftp_connect($ftp_server); // 验证用户名和密码 $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass); // 删除指定文件 if (ftp_delete($conn_id, $file)) { echo "$file 文件删除成功 n"; } else { echo "删除 $file 文件失败n"; } // 关闭ftp连接 ftp_close($conn_id); ?> |
ftp获取远程文件大小
代码如下 | 复制代码 |
<?php $file = 'somefile.txt'; // 连接ftp服务器 $conn_id = ftp_connect($ftp_server); //验证用户名和密码 $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass); //获取指定文件的大小 $res = ftp_size($conn_id, $file); if ($res != -1) { echo " $file 文件大小为 $res字节"; } else { echo "获取远程文件大小失败"; } //关闭ftp连接 ftp_close($conn_id); ?> |
简单查询数据
代码如下 | 复制代码 |
<?php //显示用户列表
while($row=mysql_fetch_array($result)){ echo "<br><br><br><a href=query.php>继续查询</a>"; |
删除数据
代码如下 | 复制代码 |
<?php $result=mysql_query("select * from userinfo");
while($row=mysql_fetch_array($result)){ }//显示列表的内容 $sql="delete from userinfo where id=".$_get[id]; }//else($id部分) |
修改,更新记录
代码如下 | 复制代码 |
<?php $result=mysql_query("select * from userinfo");
while($row=mysql_fetch_array($result)){ }//显示列表的内容 |
保存记录到数据库
代码如下 | 复制代码 |
<?php |
对文件访问实现的源代码。主要讲到php教程操作文件以及xml文档实例方法。
<?php
// 创建一个新的pdf文档句柄
$pdf = cpdf_open(0);
// 打开一个文件
cpdf_open_file($pdf);
// 开始一个新页面(a4)
cpdf_begin_page($pdf, 595, 842);
// 得到并使用字体对象
$arial = cpdf_findfont($pdf, "arial", "host", 1);
cpdf_setfont($pdf, $arial, 10);
// 输出文字
cpdf_show_xy($pdf, "this is an exam of pdf documents, it is a good lib,",50, 750);
cpdf_show_xy($pdf, "if you like,please try yourself!", 50, 730);
// 结束一页
cpdf_end_page($pdf);
// 关闭并保存文件
cpdf_close($pdf);// 如果要直接输出到客户端的话,把下面的代码加上
$buf = cpdf_get_buffer($pdf);
$len = strlen($buf);
header("content-type: application/pdf");
header("content-length: $len");
header("content-disposition: inline; filename=pie_php.pdf");
print $buf;
cpdf_delete($pdf);
?>
xml文件
<?php
$dom = new domdocument();
$dom->load("order.xsl");
$proc = new xsltprocessor;
$xsl = $proc->importstylesheet($dom);$xml = new domdocument();
$xml->load('order.xml');
$string = $proc->transformtoxml($xml);
echo $string;
?>
order.sls
<?xml version="1.0" encoding='gb2312' ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/xsl/transform">
<xsl:output encoding='gb2312'/><xsl:param name="column" select="'sku'"/>
<xsl:param name="order" select="'ascending'"/>
<xsl:template match="/">
<html>
<body>
<xsl:apply-templates select="order">
<xsl:with-param name="sortcolumn" select="$column" />
<xsl:with-param name="sortorder" select="$order" />
</xsl:apply-templates>
</body>
</html>
</xsl:template><xsl:template match="order">
<xsl:param name="sortcolumn" />
<xsl:param name="sortorder" />
<table border="1">
<tr>
<th>订单号</th>
<th>id</th>
<th>说明</th>
<th>价格</th>
<th>数量</th>
<th>合计</th>
</tr>
<xsl:apply-templates select="item">
</xsl:apply-templates>
</table>
</xsl:template>
<xsl:template match="item">
<tr>
<td><xsl:value-of select="../account" /></td>
<td><xsl:value-of select="sku" /></td>
<td><xsl:value-of select="description" /></td>
<td><xsl:value-of select="priceper" /></td>
<td><xsl:value-of select="quantity" /></td>
<td><xsl:value-of select="subtotal" /></td>
</tr>
</xsl:template>
</xsl:stylesheet>
order.xml文件
<?xml version="1.0" encoding='gb2312' ?>
<order>
<account>9900234</account>
<item id="1">
<sku>1234</sku>
<priceper>5.95</priceper>
<quantity>100</quantity>
<subtotal>595.00</subtotal>
<description>www.111cn.net</description>
</item>
<item id="2">
<sku>6234</sku>
<priceper>22.00</priceper>
<quantity>10</quantity>
<subtotal>220.00</subtotal>
<description>足球</description>
</item>
<item id="3">
<sku>9982</sku>
<priceper>2.50</priceper>
<quantity>1000</quantity>
<subtotal>2500.00</subtotal>
<description>手机包</description>
</item>
<item id="4">
<sku>3256</sku>
<priceper>389.00</priceper>
<quantity>1</quantity>
<subtotal>389.00</subtotal>
<description>手机</description>
</item>
<numberitems>www.111cn.net</numberitems>
<total>3704.00</total>
<orderdate>07/07/2002</orderdate>
<ordernumber>8876</ordernumber>
</order>
这里主要讲到关于在php教程类的调用,申请明,使用以前各种类的实例方法与操作过程,让你清楚的知道php类的construct destruct clone call wake sleep用法。
简单购物车类
<?php
class cart
{
var $items; // 购物车中的项目
// 把 $num 个 $artnr 放入车中
function add_item ($artnr, $num)
{
$this->items[$artnr] += $num;
}
// 把 $num 个 $artnr 从车中取出
function remove_item ($artnr, $num)
{
if ($this->items[$artnr] > $num) {
$this->items[$artnr] -= $num;
return true;
} else {
return false;
}
}
}
?>
类中带有构造函数
<?php
class session
{
public function __construct()
{
echo '构造函数执行';
}
public function __destruct()
{
echo '析构函数执行';
}
}
$obj = new session;
unset($obj);//删除对象, __destruct()会被调用的
//输出
//构造函数执行
/析构函数执行
?>
类的调用与clone
<?php
class session
{
public $age = 20;
public $sub = null;
public function __clone()
{
$this->sub=clone $this->sub;
}
}
class session 2
{
public $value=5;
}
$s = new session;
$s->sub=new session 2;
$s2 = clone $s;
$s->sub->$value =10;
echo $s2->sub->$value;
?>
类 call方法
<?php
class session
{
protected function __call($func,$para)
{
echo '方法不存在:’func."n".'参数为:'."n";
print_r($para);
}
}
$s=new session ();
echo $c->getnames('hello','you');
/*
输出:
方法不存在:getnames
参数为:
array
(
[0] => hello
[1] => you
)
*/
?>
类wake sleep
<?php
//定义一个session类
class session {
public $sessionvars;
public $id;
function session() {
$this->id = uniqid();
}
function _sleep() {
}
function _wake() {
$this->id = uniqid();
}
}
//建立一个对象
$s = new session;
$s-> sessionvars = "1.02";//串行化
$ss = serialize($s);
//unserialize it 反串行化 id被重新赋值
$s2 = unserialize($s);
// $s和$s2有不同的id
print_r($s);
print_r($s2);
?>
函数和类来实现,包括计数,字符串连接,函数返 回结果,数字加法运算,数字乘法运算,数字大小排序等通过函数来实现的例子
<?php教程
function small_numbers()
{
return array (0, 1, 2);
}
list ($zero, $one, $two) = small_numbers();
?>
函数引用
<?php
function &returns_reference()
{
return $someref;
}
$newref =& returns_reference();
?>
相加减
<?php
function foo()
{
$numargs = func_num_args();
echo "number of arguments: $numargs<br />n";
if ($numargs >= 2) {
echo "second argument is: " . func_get_arg(1) . "<br />n";
}
$arg_list = func_get_args();
for ($i = 0; $i < $numargs; $i++) {
echo "argument $i is: " . $arg_list[$i] . "<br />n";
}
}
foo(1, 2, 3);
?>
相关文章
- 这篇文章主要给大家介绍的是关于Lua语言新手入门的简单教程,文中通过示例代码一步步介绍的非常详细,对各位新手们的入门提供了一个很方便的教程,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。...2020-06-30
- 简单的php获取linux服务器状态的代码,不多说-直接上函数:复制代码 代码如下:function get_used_status(){ $fp = popen('top -b -n 2 | grep -E "^(Cpu|Mem|Tasks)"',"r");//获取某一时刻系统cpu和内存使用情况 $rs =...2014-05-31
- 这篇文章主要介绍了Springboot+TCP监听服务器搭建过程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-10-28
- 前一段时间使用NetStat命令查看服务器端口时,发现服务器udp端口开放了好多,最少在1000个以上,当时事情比较多,没有管它,今天终于有点时间,仔细检查了一下,排除了这个问题. ...2016-01-27
- “主机,用户名,密码”得到连接、“数据库,sql,连接”得到结果,最后是结果的处理显示。当然,数据库连接是扩展库为我们完成的,我们能做的仅仅是处理结果而已。...2013-09-29
解决HttpPost+json请求---服务器中文乱码及其他问题
这篇文章主要介绍了解决HttpPost+json请求---服务器中文乱码及其他问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-01-22- 这篇文章主要介绍了C#线程入门教程之单线程介绍,本文讲解了什么是进程、什么是线程、什么是多线程等内容,并给出了一个单线程代码示例,需要的朋友可以参考下...2020-06-25
- 这篇文章主要介绍了Hyper-V尝试连接到服务器出错无效类的解决方法,需要的朋友可以参考下...2016-09-28
- 这篇文章主要介绍了mac使用Shell(终端)SSH连接远程服务器的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-07-11
- 这篇文章主要为大家详细介绍了js实现上传图片到服务器,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-04-11
- 这篇文章主要为大家详细介绍了uploader秒传图片到服务器的完整代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2017-04-27
- 这篇文章主要介绍了CocosCreator入门教程之用TS制作第一个游戏,对TypeScript感兴趣的同学,一定要看一下...2021-04-16
c# HttpWebRequest通过代理服务器抓取网页内容应用介绍
在C#项目开发过程中可能会有些特殊的需求比如:用HttpWebRequest通过代理服务器验证后抓取网页内容,要想实现此方法并不容易,本文整理了一下,有需求的朋友可以参考下...2020-06-25- 这篇文章主要以图文结合的方式详细介绍了本地Windows 78上IIS服务器搭建教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 ...2017-07-06
- 这篇文章主要介绍了Linux环境下nginx搭建简易图片服务器,需要的朋友可以参考下...2016-01-27
- 最近公司的网站升级Windows 2016服务器,选择安装了最新版的Windows 2016,以前使用Windows服务器还是Windows 2003系统,发现变化还是挺多的,依次记录下来以备后面查阅...2020-10-05
使用node-media-server搭建一个简易的流媒体服务器
这篇文章主要介绍了使用node-media-server搭建一个简易的流媒体服务器,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-01-20- 阿里云免费套餐再次升级,提供更多产品,更久时长的使用,本次活动针对个人用户和企业用户,不过仅限新用户申请,想要了解更多,下面就来简单地了解一下活动规则 阿里云免费...2017-07-06
- 首先,主要是ecmall使用的phpmailer版本太低,不支持加密连接。然后,得对相应代码做一定调整。1. 覆盖phpmailer请从附件进行下载: 复制代码 代码如下:http://cywl.jb51.net:81/201405/yuanma/ecmall_phpmailer_lib(jb51.n...2014-05-31
- 这里主要讲到关于在php教程类的调用,申请明,使用以前各种类的实例方法与操作过程,让你清楚的知道php类的construct destruct clone call wake sleep用法。 简单购物车...2016-11-25