我发现了一个问题,今天与大家分享。我把整个过程描述一下。
问题:公司有个框架是基于smarty写的,我负责php的升级,维护人员把新环境布上来之后,测试人员找我提出经常报错(错误:提示找不到文件的)。
我追踪了一下代码,原来是smarty的这个地方报的错误。
错误:这里报出文件不存在。
思考过程:
1、我原以为是程序里没有这个文件呢,结果发现,文件是有的,那是怎么回事?
2、后来我再猜是不是php内核...
php使用正则验证中文
php用preg_match来匹配并判断一个字符串中是否含有中文或者都是中文的方法如下:
$str = 'php学习博客';
if(preg_match('/[\x7f-\xff]/', $str)){
echo '字符串中有中文<br>';
}else{
echo '字符串中没有中文<br>';
}
if(preg_match('/^[\x7f-\xff]+$/', $str)){
echo '字符串全是中文';
}else{
echo '字符串不全是中文';
}
以上程序的输出的结果为:
字符串中有中文
字符...
PHP版本的选择5.2.17 5.3.27 5.3.28 5.4 5.5兼容性问题分析
大家在选择PHP版本时一定很困惑,有这么多版本究竟选那个呢?
问题:我们现在新买了个服务器,用的是windows server 2008 r2。配置php 5.4的环境。
但我们之前开发的用2003,php是用5.2版本的,移植到新服务器,程序运行会有影响吗?或者我还需要注意那些问题?
API版本
PHP采用大版本向下兼容的升级方式,也就是说5.5兼容5.1-5.4,话虽如此,实际上兼容性并不乐观,大家也不要指望PHP官方会给出什么好的解...
PHP实现的DES加密解密实例代码
本文实例讲述了PHP实现的DES加密解密实例。分享给大家供大家参考,具体如下:
<?php
$key = 'very important data';
function jiami($key, $str)
{
/* Open module, and create IV */
$td = mcrypt_module_open('des', '', 'ecb', '');
//$td = mcrypt_module_open(MCRYPT_DES, '', MCRYPT_MODE_CBC, '');
//$td = mcrypt_module_open('des', '', 'cbc', '');
$key = substr($key, ...
PHP实现基于mysqli的Model基类完整实例
本文实例讲述了PHP实现基于mysqli的Model基类。分享给大家供大家参考,具体如下:
DB.class.php
<?php
//数据库连接类
class DB {
//获取对象句柄
static public function getDB() {
$_mysqli = new mysqli(DB_HOST,DB_USER,DB_PASS,DB_NAME);
if (mysqli_connect_errno()) {
echo '数据库连接错误!错误代码:'.mysqli_connect_error();
ex...
PHP安全下载文件的方法
本文实例讲述了PHP安全下载文件的方法。分享给大家供大家参考,具体如下:
<?php
header('Content-Type:text/html;Charset=utf-8');
define('ROOT_PATH', dirname(__FILE__));
/**
* 下载文件
* @param string $file_path 绝对路径
*/
function downFile($file_path) {
//判断文件是否存在
$file_path = iconv('utf-8', 'gb2312', $file_path); //对可能出现的中文名称进行转码
if...
10个对初学者非常有用的PHP技巧
本文介绍一些关于改善和优化PHP代码的提示和技巧,供大家参考,具体内容如下
1.不要使用相对路径,要定义一个根路径
这样的代码行很常见:
require_once('../../lib/some_class.php');
这种方法有很多缺点:
1)、它首先搜索php包括路径中的指定目录,然后查看当前目录。因此,会检查许多目录。
2)、当一个脚本被包含在另一个脚本的不同目录中时,它的基本目录变为包含脚本的目录。
3)、另一个问题是...
PHP实现简单实用的分页类代码
本文实例讲述了PHP实现简单实用的分页类。分享给大家供大家参考,具体如下:
<?php
class Page {
private $total; //总记录
private $pagesize; //每页显示多少条
private $limit; //limit
private $page; //当前页码
private $pagenum; //总页码
private $url; //地址
private $bothnum; //两边保持数字分页的量
//构造方法...
二款php文件上传程序
这二款文件上传程序应该是php中文件上传功能最简单的吧,基本没做任何判断,直接把文件上传到了服务器.
第一款文件上传代码:
$sort=12;
$f_type=strtolower("swf,jpg,rar,zip,7z,iso,gif");//设置可上传的文件类型
$file_size_max=200*1024*1024;//限制单个文件上传最大容量//开源代码phpfensi.com
$overwrite = 0;//是否允许覆盖相同文件,1:允许,0:不允许
$f_input="files";//设置上传域名称
forea...
php文件上传类与详解
php 配置中的 upload_tmp_dir 这个参数进行比较,如果文件在这个目录下面,那么 move_uploaded_file 才会进行移动操作,而且这个比较是大小写敏感,/ 在windows 下面也是不一样的,而在php配置文件解析的时候,会调用一个realpath 函数,也就是是说,你在move_uploaded_file 之前.
必须对$file['tmp_name'] = realpath($file['tmp_name']); realpath 一下.
还有一种情况,大家要注意,就是 move_uploaded_file 如果配...