
php
qidizi
文件共享盘:http://cid-0c051e9a0a1fd5a3.office.live.com;
展开
-
phpcms的栏目缓存无限级罗列展示处理方法
<?php$a = include_once('D:\\web\\www\\phpcms.test\\caches\\caches_commons\\caches_data\\category_content_3.cache.php');function getNav($cid){//组织导航 global $a; $n = array(); if (empty($cid) || e原创 2013-07-04 18:34:39 · 1373 阅读 · 0 评论 -
phpcms输入后台内容录入框中支持php代码
extention.func.php中添加function templateQ($html, $format = 1) {if (1 == $format) {// return preg_replace_callback("//", '_templateQ', $html);} else {//09="^php code^"return preg_replace_callback("/09\=\原创 2013-03-28 16:54:37 · 613 阅读 · 0 评论 -
php的is_dir检测window共享服务器名时失败,只能检测目录
测试代码mkdir 返回true,而is_dir却是失败且在共享中看到创建成功了.而使用is_dir('//qidizi/qidizi'),返回true;所以,对于机器名时,会认为不是目录;原创 2013-03-28 16:51:21 · 763 阅读 · 0 评论 -
多人维护代码存在问题
1 相同功能方法重复编写2 通用方法不集中放置,只是复制使用,导致重名错误3 include/require方法没有加once,导致在重复包含时出错.4 某人维护的不同代码文件之间使用相同的当前目录define变量名,被其它人包含到同一个文件,出错变量重复错误5 临时编写的方法被后期修改变成共用方法,且方法用法发生变化,被再次包含到有临时同名方法中出现功能出错.6 代码拼写法习惯不同原创 2013-03-28 16:53:42 · 732 阅读 · 0 评论 -
php代码快速测试页面
有时只想测试某个方法的使用方法,可以使用一个页面即时测试.快速直观代码------------------header('content-type: text/html;charset=GB2312');$php = empty($_POST['php']) ? 'echo "输入php代码运行快速测试";' : $_POST['php']; ?>function userErrorHandler原创 2013-03-28 16:52:07 · 8895 阅读 · 0 评论 -
php使用fsockopen请求方法,支持https/header设置/代理请求等定制
代理请求示例: $re = request("http://127.0.0.1:8087", 'GET https://docs.google.com/viewer?url=http%3A%2F%2Ficon.chinahrd.net%2Fuploadfile%2FdocView%2FtoolDirLink%2Fhrm_jc%2Fjxts_1.ppt&embedded=true&mobile原创 2013-03-28 16:52:00 · 9689 阅读 · 0 评论 -
phpcms采集中的正则中使用中文拼写时注意
html待清理串如下作者:张颖异清理后需要串如下:张颖异正确正则(查看了一下代码,是[|]前是正则表达式,后是替换内容如果是/符会自动加上\)(来源:.*)?作者:[|]错误正则(本意是如何对方使用了半角冒号)(来源:.*)?作者[:\:]错误正则得到结果赫庞币?这因为是php的多字节字符在解析时会出现问题,phpcms在代码编写上没有使用/u选项原创 2013-03-28 16:49:57 · 904 阅读 · 0 评论 -
phpcms采集正则快速测试页代码
这下面用到是自己的模块控制器来弄的,也可以做成一个独立的页面;/* * 临时使用功能文件 * 用于快速测试采集正则编写正确性 * 访问地址 http://cms.chinahrd.net/index.php?m=chrd&c=reg_test */defined('IN_PHPCMS') or exit('No permission resources.');pc_base::load_app_c原创 2013-03-28 16:49:53 · 1130 阅读 · 0 评论 -
array_multisort排序原理
$data[] = array('volume' => 67, 'edition' => 2);$data[] = array('volume' => 86, 'edition' => 1);$data[] = array('volume' => 85, 'edition' => 6);$data[] = array('volume' => 98, 'edition' => 2);$data[]原创 2013-03-28 16:48:52 · 1787 阅读 · 0 评论 -
php的rmdir递归删除某种情况下目录信息刷新过慢而导致提示文件夹非空延时重试解决测试
/* * 循环删除目录 * return:true 或 string错误, 请使用绝对真来判断是否成功 */ function rmdir($path) { $path = trim($path); $path = str_replace("\\", '/', $path); if (!file_exists($path))原创 2013-03-28 16:48:45 · 1681 阅读 · 0 评论 -
google的文档在线预览
因为暂时没有好用的方法来生成预览文件.临时使用google的在线生成功能,然后下载.在处理时发现:从文档说明看:技术文档 - 构建自己的网址的说明原创 2013-03-28 16:52:04 · 2225 阅读 · 0 评论 -
自己写的一个php分页类,支持onclick和详细定制参数
调用echo page::html(array('rows' => $rowCount, 'nums' => 6, 'countsL' => '共', 'countsR' => '条记录', 'timeA' => microtime(1))); 效果1共259条记录耗时0毫秒---------------------代码----------------------class page { p原创 2013-03-28 16:51:53 · 619 阅读 · 0 评论 -
php的filesystem相关function+utf-8的编码+windows时不支持中文文件名(如unlink,file_exists)
当在windows环境下,使用php代码保存编码是utf-8时.使用file_exists检测中文路径时,就会出现提示不存在的.这个时候虽然可以通过iconv转成gbk来解决,但是这样就导致代码不能兼容了.所以,最好方法是不使用多字节文件路径.原创 2013-03-28 16:48:43 · 648 阅读 · 0 评论 -
获取a标签的href中的链接php正则
text.php文件-----------------$body = $_POST['url']; preg_match_all("/]+href *\= *[\"']?(http\:\/\/[^ '\"]+)/i", $body, $body_links, PREG_SET_ORDER); function test_print(& $item, $key){ $item = htmlspe原创 2013-04-11 21:28:51 · 15961 阅读 · 0 评论 -
在类中使用set_error_handler,郁闷的用法
function customError($errno, $errstr) { $this->_set_error_message('smtp stream fwrite error ', $errstr); exit( $errstr); } // -----------------------------------------------原创 2013-04-11 21:30:09 · 1255 阅读 · 0 评论 -
支持中英混合字符串转数组的函数 -- utf-8/gb2312编码
function str2array($str, $encode = 'UTF-8'){ $strA = array(); if ($str == '') return $strA; $len = mb_strlen($str, $encode); for($c = 0; $c $strA[] = mb_substr($str, $c原创 2013-04-11 21:32:42 · 922 阅读 · 0 评论 -
discuz清空session,导致session保存机制失败,session无法更新与解决
<?phpfunction userErrorHandler() { $e = func_get_args(); echo '----------运行出错---------:'.print_r($e, 1).'----------运行出错---------';}set_error_handler("userErrorHandler");set_exception_hand原创 2013-06-18 14:16:41 · 2368 阅读 · 0 评论 -
php的$_FILES的临时储存文件与"回收机制"
我想有跟我一样的想法的人会这样处理的: 上传的文件只是想临时使用,不需要把原文件保存备用,如resize之类的操作,且这些后期的操作会出现在第二轮从客户端请求时才操作的,如先上传,把上传的临时文件路径返回到浏览器,用户点击后再对这个临时文件进行操作;可是在实际的实现中发现,这个临时文件在二轮请求时,竟然不存在了,跑到临时文件夹中查看也没有找到.我在某q群中也遇到有人问过这个问题,导致的原创 2013-05-15 09:13:42 · 1590 阅读 · 0 评论 -
开源的调查问卷平台LimeSurvey
问卷页面管理页面使用了一下,感觉,有些功能还能将就着用.在生成问卷的排版上并不是很美观验证上来说,也不是很合理.有些翻译会让人摸不着头脑.总体来说.还行.比没有强.原创 2013-05-27 10:42:24 · 2984 阅读 · 2 评论 -
在class的function中include的文件中,非php的global全局环境
测试代码1.php<?php$g1 = 'g1';class c{ function fun() { include('2.php'); echo "\n-----in class fun---\n"; global $g1; var_dump("\$g1 => ", $g1 ,'$g2 => ', $g2 ,'$gg2 => ', $gg2 ); ec原创 2013-05-22 12:40:04 · 3547 阅读 · 0 评论 -
安全化mysql的where条件输入拼接面板:用于给不会mysql语法的操作人使用
因为需要edm中可以从discuz会员库中导入.而操作人却不是技术人员,所以开发了此面板.可以满足需求;且安全简单;需要二个文件,后台处理部分代码/* 生成关系大概如下[//input:where; $_POST['where'] [//行1 input:where[0]; $_POST['where'][0] '' //行级连接 input:where[0]原创 2013-04-20 02:12:11 · 1963 阅读 · 0 评论 -
一个密码加密方案
用户表有字段:userId,user,pwdpwd = md5(userId.pwd.'区别于其它密码串');或是pwd = md5(user.pwd.'区别于其它密码串');使用后者会好点,因为在保持用户名唯一的情况下,一般来说,用于登录用的,都需要保持唯一;user是输入的,方便取用,userId必须查询数据库才能得到;增加user或userId作用是密码绑定于本行记录,防止用户名不同,密码相原创 2013-04-11 21:28:19 · 689 阅读 · 0 评论 -
phplist开源系统代码使用
前台的文件中tchidese.inc编码指定了是utf-8,而代码保存却使用了默认的字符集.导致前台输出乱码.需要修改保存编码,前台输出指定编码一致才好解决"国际通用的编码问题",更加方便ajax传递中文问题;呵呵原创 2013-04-11 21:27:56 · 600 阅读 · 0 评论 -
or 语法
function dpSql($sql){ global $drupalDB; $result = mysql_query($sql, $drupalDB) or exitJs('查询出错:' . mysql_error($drupalDB)); return $result;} 与function dpSql($sql){ global $drupalDB; ret原创 2013-04-11 21:32:50 · 526 阅读 · 0 评论 -
window安装memcache
从http://splinedancer.com/memcached-win32/下载解压放好.直接运行里面的exe从http://downloads.php.net/pierre/下载对应的php_memcache.dll放到php程序的ext下面在php.ini中加入extension=php_memcache.dll保存.重启apache用php的phpinfo()测试是否出现memcach原创 2013-04-11 21:32:36 · 550 阅读 · 0 评论 -
php检测文件/字符串编码方法
code_detect.php--------------/** 可识别txt类型的文件,如果文本文件的内容为Ansi则返回EUC-CN,如果内容为utf-8则返回UTF-8* 能识别的编码有: UTF-8,UTF-16BE,UTF-16LE,UTF-32BE,UTF-32LE,EUC-CN(ANSI)*/define ('UTF32_BIG_ENDIAN_BOM' , chr(0x00) .原创 2013-04-11 21:26:45 · 1563 阅读 · 0 评论 -
当php内置函数需要以字符串格式调用"$this->fun名"类内函数时写法
class xx { /** * 添加内容 * * @param $datas * @param $isimport 是否为外部接口导入 */ private function insertContent() { $this->tabPri = new_addslashes($this->tabPri);原创 2013-04-11 21:32:46 · 958 阅读 · 0 评论 -
php版本的英文计1,中文计2的截字方法,自动支持utf8与gbk
/* * 字节截取,英文一个,中文等双字节按2算; * 调用形态 byteSub ($str, 1, 8, '...'); * start与len都是按单字节算; * start如果是处于半个中文,就取该整个中文; * len如果处于半个中文,就不包含此中文; * start从0开始,不是>=0,自动设置成0 * len 从0开始,如果不是>=0,自动设置成0 */function byteSu原创 2013-04-09 21:12:14 · 646 阅读 · 0 评论 -
php:关闭出错提示后用set_error_handler/set_exception_handler输出出错
function myException($exception){ echo '/*'.$exception->getMessage().'*/';}set_exception_handler('myException');用于抛出的错误function userErrorHandler($errno, $errmsg, $filename, $linenum, $vars) { e原创 2013-04-09 21:12:06 · 741 阅读 · 0 评论 -
php header头设置空格问题
在输出文件时,一般遇到最多的是乱码问题.主要是不统一造成的.1 文件保存时使用的编码,在保存时指定2 输出时告诉浏览器使用的编码,在输出时使用header指定3 从数据库中或是文件中插入的字符编码跟文件保存的编码不一致.如文件保存使用utf-8保存,但是插入的编码却是gbk的.4 客户前端输入的编码跟文件保存的编码不一致.主要是以上几种原因导致乱码 在设置header时空格对浏览器的影响也很大.将原创 2013-04-09 21:09:04 · 2158 阅读 · 0 评论 -
html代码替换正则:把<ss><img src="a" data="b"></ss>换成<img src=b />
============php代码=========== $inHtml =一共有两块#1 购买于2008年年底 内含指环王三部曲、加勒比海盗4部、世界自然遗产三部蓝光原盘文件2011-12-18 21:31 上传下载附件 (261.62 KB)2# 购买于2009年9月 内含星球大战6部曲、哈里波特1-8全集的蓝光原盘文件2011-12-18 21:30 上传下载附件 (278.28 KB)eo原创 2013-04-09 21:08:41 · 5968 阅读 · 0 评论 -
php获取文件总行数方法
效率测试 本次处理是第1轮,本轮读取文件行数:500,共1391121行.本轮读取文件耗时:1.1596秒 虽然计时里面包含有一些其它处理,但是影响不是很大.此测试txt文件是84.9M,感觉速度还是可以的. /*==================php代码=========*/ if ($runLoop $lineCount = 0; w原创 2013-04-09 21:08:24 · 3010 阅读 · 0 评论 -
php 与 <input name="xx[]"数组格式传递关系
如上图我想得到一个二维数组关系的php $_POST对象时,即第行为一维数组,每行的每个值是第二维数组;如想得到 array(1) { ["where"]=> array(2) { [0]=> array(4) { ["rowPre"]=> string(2) "or" [0]=> array(3) { ["filed"]=>原创 2013-04-09 21:08:07 · 1662 阅读 · 0 评论 -
php字符串形式调用类的方法
$cn = getCfg('className'); $cf = getCfg('classFunc'); $cn::$cf(); 而$cn = 'ss::ss';$cn();相当一个全局的方法而不是类中方法;原创 2013-04-09 21:07:58 · 1220 阅读 · 0 评论 -
php:setcookie(\'name\', \'qidizi中\')中文与客户端解码获取关系
setcookie()的php中其中一点提醒 cookie 中值的部分在发送的时候会被自动用 urlencode编码并在接收到的时候被自动解码并把值赋给与自己同名的 cookie 变量。如果不想这样并且在使用 PHP 5 的话,可以用 来代替。在发送时编码浏览器向php发送再用url来解码php设置的headerSet-Cookie UID_USER_PWd=32%5Eqidizi%E6%原创 2013-04-09 21:12:08 · 633 阅读 · 0 评论 -
php正则对\\\\转义的特殊处理需要注意
echo preg_replace("/[^\/\-\w\.\\]/", '', 'dd\\\/dd');提示出错Warning: preg_replace() [function.preg-replace]: Compilation failed: missing terminating ] for character class at offset 12 in G:\www\test\ind原创 2013-04-09 21:11:57 · 895 阅读 · 0 评论 -
3d(三维)验证码实现(部分代码来自网络),旋转未完成,有待改进(一)
class captcha { static private $_str = 'aAbBdDeEfFgGhHiJLmMnNqQrRtTyY23456789';//只允许的字符串 /* * 清空验证码 */ static public function clear() { !session_id() && session_start();原创 2013-04-09 21:11:29 · 2083 阅读 · 0 评论 -
php: 字符串定界符(<<<)形式定义字符串结束必须换行
如$str = 任何字符(但是某些情况还是需要注意的)strEof;echo '结束';------------------------像上例,如果"strEof;"后面没有换行,且文件就至此结束了,就会出现下面错误Parse error: syntax error, unexpected $end, expecting T_VARIABLE or T_END_HEREDOC or T_DOL原创 2013-04-09 21:09:32 · 3719 阅读 · 0 评论 -
php不开启php短标签(<?)导致的郁闷脚本不解释的错误
因为不想支持这种写法,我的环境一般是不会开启它的,浪费.接着别人给我一个类,没注意看这个标签,它是我把它include进去了,也没出错.那肯定是路径是正确的.但是在调用这个类时却提示说没有这个类的存在,极度的郁闷.想了,尽可能的问题,但是没想过它没有经过php解释...弄了好久,尝试调用这个文件中的一个变量,发现竟然没有值,那肯定是是不执行了,翻看了一下这个文件.也就是几行代码...无意看到唉.这原创 2013-04-09 21:07:33 · 1080 阅读 · 0 评论 -
openx平台登录后页面500状态码死掉
经过跟踪发现是php使用的是30秒的运行超时时长,而使用https加密协议连接到api.pc.openx.com时超时不返回,导致脚本运行超时挂掉的,因为这个平台代码比较绕,就没有仔细看连接上支具体做什么用,简单的猜测只是升级之类的作用,于是在XmlRpcClient.php对连接 的host进行判断,如果是这个域名就直接返回提示,因为经过测试连接这个域名基本上是不能返回,不懂是网络商还是原创 2013-03-18 15:02:55 · 717 阅读 · 0 评论