php获取svn文件,然后ftp上传服务器代码
2010-12-28 12:39
1036 查看
配置文件
php获取svn文件,然后ftp上传服务器代码
本文出自 “MPU的专栏” 博客,请务必保留此出处http://linjin101.blog.51cto.com/2601349/466337
<?php //setup commandline $svn_cmd1 = 'svn.exe update '; $svn_cmd2 = ' --username xxx --password xxx '; $ftp_ip = '#########'; $ftp_user = '#########'; $ftp_pass = '#########'; ?>
php获取svn文件,然后ftp上传服务器代码
<?php require_once("config.php"); // CONFIG dir $CONFIG_PG = 'E:\phpupdate\xxx'; // svn上传文件列表 $svnlist = array(); $svnlist = updatesvn($svn_cmd1,$CONFIG_PG,$svn_cmd2); /* $svnlist[0]= 'A E:\XXXX\Lib\Action\XXXAction.class.php'; $svnlist[1]= 'U E:\XXXXX\Action\XXXAction.class.php'; $svnlist[2]= 'At revision 5625.'; */ $remoteArr = $svnlist; //ftp上传文件列表 $localArr = $svnlist; //本地文件列表 //输出svn信息 svnMessage(&$remoteArr,&$localArr,$CONFIG_PG); //上传 ftp_upload($ftp_ip,$ftp_user,$ftp_pass,$localArr,$remoteArr); /** * 上传svn更新 */ function updatesvn($svn_cmd1,$CONFIG_PG,$svn_cmd2) { //execute svn update command $cmd = $svn_cmd1 . $CONFIG_PG . $svn_cmd2; //echo 'Debug:'.$cmd. "<br />\r\n"; $ar = array(); $status = 0; exec($cmd, $ar, $status); if ( count($ar) <= 1 ) { echo $ar[0]; echo '<br>no upload file!'; exit; } //print_r($ar); echo "Status: " .$status . "<br />\r\n"; return $ar; } /** * 输出调试信息 */ function svnMessage($remoteArr,$localArr,$CONFIG_PG) { /* * local dir */ for($ctr = 0;$ctr < count($localArr)-1; $ctr++) { //$localArr[$ctr] = str_replace ($CONFIG_FLG,'',$localArr[$ctr]); $istr = stripos($localArr[$ctr], $CONFIG_PG); $localArr[$ctr] = substr($localArr[$ctr],$istr); $localArr[$ctr] = str_replace ('\\','/',$localArr[$ctr]); } echo "本地路径:<br />\r\n"; for($ctr = 0;$ctr < count($localArr)-1; $ctr++) { echo $localArr[$ctr]; echo "<br />\r\n"; } /* * remote dir */ for($i = 0;$i < count($remoteArr)-1; $i++) { //$remoteArr[$i] = str_replace ($CONFIG_PG,'',$remoteArr[$i]); $imstr = stripos($remoteArr[$i], $CONFIG_PG); $remoteArr[$i] = substr($remoteArr[$i],$imstr+strlen($CONFIG_PG)); $remoteArr[$i] = str_replace ('\\','/',$remoteArr[$i]); } echo "<br />\r\n上传路径:<br />\r\n"; for($i = 0;$i < count($remoteArr)-1; $i++) { echo $remoteArr[$i]; echo "<br />\r\n"; } } /** * ftp上传脚本 */ function ftp_upload($ftp_ip,$ftp_user,$ftp_pass,$localPathArr,$remotePathArr) { $conn = ftp_connect($ftp_ip) or die("Could not connect"); ftp_login($conn,$ftp_user,$ftp_pass); if ( count($localPathArr) == count($remotePathArr) ) { for($i = 0;$i < count($localPathArr)-1; $i++) { // 开始 $fp = fopen($localPathArr[$i], 'r'); $ret = ftp_nb_fput($conn, $remotePathArr[$i], $fp, FTP_BINARY); while ($ret == FTP_MOREDATA) { // 加入其它要执行的代码 echo "...."; // 继续传送... $ret = ftp_nb_continue ($conn); } if ($ret != FTP_FINISHED) { echo "上传文件中发生错误..."; exit(1); } } echo ".............................."; echo "<br />\r\n OK! <br />\r\n"; } else { echo "svn check error!<br />\r\n"; } ftp_close($conn); } ?>
本文出自 “MPU的专栏” 博客,请务必保留此出处http://linjin101.blog.51cto.com/2601349/466337
相关文章推荐
- 获取服务器支持文件最大上传大小 (PHP代码函数)
- Java代码实现上传文件到Ftp服务器
- 一键自动发布ipa(更新svn,拷贝资源,压缩资源,加密图片资源,加密数据文件,加密lua脚本,编译代码,ipa签名,上传ftp)
- [php代码]从svn获取指定版本,并同步到ftp上。
- JAVA连接FTP服务器,并上传/下载文件代码
- C# FTP上传文件至服务器代码
- 三步FTP实现PHP上传文件代码剖析
- [PHP]利用XAMPP搭建本地服务器, 然后利用iOS客户端上传数据到本地服务器中(三. PHP端代码实现)
- 服务器基于PHP CodeIgniter,Android基于Volley实现多文件/图片上传(含服务器,web版和android客户端完整代码)
- C# FTP上传文件至服务器代码
- C# FTP上传文件至服务器代码
- 第38篇 前端找老师代码放置及php对上传文件限制及SVN上传与下载
- php下连接ftp实现文件的上传、下载、删除文件实例代码
- php 网页ftp 代码二 文件上传
- C# FTP上传文件至服务器代码
- 本地文件上传到服务器 php代码
- java 两个通过java代码操作FTP的类,上传下载删除,获取文件
- PHP程序上传文件时,想指定上传到另一台服务器,php-ftp_connect
- 利用WinInet库和STL获取计算机硬盘中的文件并上传到指定FTP服务器
- FTP服务器文件上传的代码实现