PHP 函数,文件,sql 语句优化方法

 更新时间:2016年11月25日 15:09  点击:1338

.在可以用file_get_contents替代file、fopen、feof、fgets等系列方法的情况下,尽量用file_get_contents,因为他的效率高得多!但是要注意file_get_contents在打开一个url文件时候的php教程版本问题;

<?php
echo file_get_contents("test.txt");
?>

file_get_contents() 函数把整个文件读入一个字符串中。

和 file() 一样,不同的是 file_get_contents() 把文件读入一个字符串。

file_get_contents() 函数是用于将文件的内容读入到一个字符串中的首选方法。如果操作系统支持,还会使用内存映射技术来增强性能。

语法
file_get_contents(path,include_path,context,start,max_length)参数 描述
path 必需。规定要读取的文件。
include_path 可选。如果也想在 include_path 中搜寻文件的话,可以将该参数设为 "1"。
context 可选。规定文件句柄的环境。

context 是一套可以修改流的行为的选项。若使用 null,则忽略。
 
start 可选。规定在文件中开始读取的位置。该参数是 php 5.1 新加的。
max_length 可选。规定读取的字节数。该参数是 php 5.1 新加的。

说明


2.尽量的少进行文件操作,虽然php的文件操作效率也不低的;


3.优化select sql语句,在可能的情况下尽量少的进行insert、update操作(在update上,我被恶批过);

加入可以用lock table与unlock来实例批量插入

4.尽可能的使用php内部函数(但是我却为了找个php里面不存在的函数,浪费了本可以写出一个自定义函数的时间,经验问题啊!);
内部函数如,time,date,fopen,rsort等

5.循环内部不要声明变量,尤其是大变量:对象(这好像不只是php里面要注意的问题吧?);

如果for($i=1;$i<=10;$i++){ $a=1;...}

6.多维数组尽量不要循环嵌套赋值;

7.在可以用php内部字符串操作函数的情况下,不要用正则表达式;

8.foreach效率更高,尽量用foreach代替while和for循环;

9.用单引号替代双引号引用字符串;

10.“用i+=1代替i=i+1。符合c/c++的习惯,效率还高”;

11.对global变量,应该用完就unset()掉;

 

$hello = "这是helloworld";
$test = "{$hello}";
$test = '{$hello}';
ps教程: 很明显双引号中的会被迭代出来,&nbsp; 单引号就原封不动的输出来.


其实在写sql的时候,我看到过比较麻烦的一种 " '. $name.' " , 完全可以

用"'{$name}'", 如果比较多的话, 不需要用很多的 . 号来连接, 而且也比较清晰

. 记录一下

在php教程中获取表单与url传过来参数有很多方法 ,下面我们来介绍来下关于$_post 与$_request 获取提交表单代码原理与方法 。

$_post它在php只能获取由表单的 method="post" 时它才能接受到数据,如下代码

<form id="form1" name="form1" method="get" action="">
  <label>
  <input type="text" name="cn" value='获取到我了' />
  </label>
</form>

a.php页面

<?
if( $_post )
{
 echo $_post['cn'];
}
else
{
    echo '没有获取到值';
}
?>

得到的值是 获取到我了 ,如果我们把表单的method="get"那么就要用$_get来获取了,如下

echo $_get['cn'] ;//这样也有值哦。

那么我们的$_request怎么用呢,下面看

echo $_request['cn'];

//不管你表单的method是get或post或来自url参数传的值他都可以获取到哦。

那么他们有什么区别呢,根据我的总结$_post,$_get他们在效率要高到$_request,这个仔细想一下就明白了,因为前二个是有针对性的,自然不要判断是post,get的数据,页$_request他要判断提交过来的是以那种形式过来,这样就花费的一些时间哦。

注明:本站原创教程转载注明来源http://www.111cn.net/phper/php.html

unset ( mixed var [, mixed var [, ...]])
unset() 销毁指定的变量。注意在 php教程 3 中,unset() 将返回 true(实际上是整型值 1),而在 php 4 中,unset() 不再是一个真正的函数:它现在是一个语句。这样就没有了返回值,试图获取 unset() 的返回值将导致解析错误


null 字节是变量为空 $t = ''; 变量有值,不过是空,isset()是true
null 常数是 $t = null; 变量没有值,连空都不是,isset()是false

<?php
$a = array(
'a' => 'a',
'b' => 'b'
);
$b = array(
'a' => 'a',
'b' => 'b'
);
$a['b'] = null;
unset($b['b']);
print('<pre>');
print_r($a);
print('<br />');
print_r($b);
print('</pre>');
?>

结果:

 

array
(
[a] => a
[b] =>
)
array
(
[a] => a
)

//读取文件函数
<?
function readfromfile($file_name) {
if (file_exists($file_name)) {

$filenum=fopen($file_name,"r");
flock($filenum,lock_ex);
$file_data=fread($filenum, filesize($file_name));
rewind($filenum); //osphp.com.cn
fclose($filenum);
return $file_data;
}
}
?>

 

//写入文件函数
<?
function writetofile($file_name,$data,$method="w") {
$filenum=fopen($file_name,$method);

flock($filenum,lock_ex);
$file_data=fwrite($filenum,$data);
fclose($filenum);
return $file_data;
}
?>

[!--infotagslink--]

相关文章

  • php读取zip文件(删除文件,提取文件,增加文件)实例

    下面小编来给大家演示几个php操作zip文件的实例,我们可以读取zip包中指定文件与删除zip包中指定文件,下面来给大这介绍一下。 从zip压缩文件中提取文件 代...2016-11-25
  • php正确禁用eval函数与误区介绍

    eval函数在php中是一个函数并不是系统组件函数,我们在php.ini中的disable_functions是无法禁止它的,因这他不是一个php_function哦。 eval()针对php安全来说具有很...2016-11-25
  • php中eval()函数操作数组的方法

    在php中eval是一个函数并且不能直接禁用了,但eval函数又相当的危险了经常会出现一些问题了,今天我们就一起来看看eval函数对数组的操作 例子, <?php $data="array...2016-11-25
  • Jupyter Notebook读取csv文件出现的问题及解决

    这篇文章主要介绍了JupyterNotebook读取csv文件出现的问题及解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2023-01-06
  • Python astype(np.float)函数使用方法解析

    这篇文章主要介绍了Python astype(np.float)函数使用方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-06-08
  • Python中的imread()函数用法说明

    这篇文章主要介绍了Python中的imread()函数用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-16
  • C# 中如何取绝对值函数

    本文主要介绍了C# 中取绝对值的函数。具有很好的参考价值。下面跟着小编一起来看下吧...2020-06-25
  • C#学习笔记- 随机函数Random()的用法详解

    下面小编就为大家带来一篇C#学习笔记- 随机函数Random()的用法详解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25
  • Photoshop打开PSD文件空白怎么解决

    有时我们接受或下载到的PSD文件打开是空白的,那么我们要如何来解决这个 问题了,下面一聚教程小伙伴就为各位介绍Photoshop打开PSD文件空白解决办法。 1、如我们打开...2016-09-14
  • 解决python 使用openpyxl读写大文件的坑

    这篇文章主要介绍了解决python 使用openpyxl读写大文件的坑,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-13
  • C#实现HTTP下载文件的方法

    这篇文章主要介绍了C#实现HTTP下载文件的方法,包括了HTTP通信的创建、本地文件的写入等,非常具有实用价值,需要的朋友可以参考下...2020-06-25
  • SpringBoot实现excel文件生成和下载

    这篇文章主要为大家详细介绍了SpringBoot实现excel文件生成和下载,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-02-09
  • C#操作本地文件及保存文件到数据库的基本方法总结

    C#使用System.IO中的文件操作方法在Windows系统中处理本地文件相当顺手,这里我们还总结了在Oracle中保存文件的方法,嗯,接下来就来看看整理的C#操作本地文件及保存文件到数据库的基本方法总结...2020-06-25
  • php无刷新利用iframe实现页面无刷新上传文件(1/2)

    利用form表单的target属性和iframe 一、上传文件的一个php教程方法。 该方法接受一个$file参数,该参数为从客户端获取的$_files变量,返回重新命名后的文件名,如果上传失...2016-11-25
  • 金额阿拉伯数字转换为中文的自定义函数

    CREATE FUNCTION ChangeBigSmall (@ChangeMoney money) RETURNS VarChar(100) AS BEGIN Declare @String1 char(20) Declare @String2 char...2016-11-25
  • Android开发中findViewById()函数用法与简化

    findViewById方法在android开发中是获取页面控件的值了,有没有发现我们一个页面控件多了会反复研究写findViewById呢,下面我们一起来看它的简化方法。 Android中Fin...2016-09-20
  • php批量替换内容或指定目录下所有文件内容

    要替换字符串中的内容我们只要利用php相关函数,如strstr,str_replace,正则表达式了,那么我们要替换目录所有文件的内容就需要先遍历目录再打开文件再利用上面讲的函数替...2016-11-25
  • PHP文件上传一些小收获

    又码了一个周末的代码,这次在做一些关于文件上传的东西。(PHP UPLOAD)小有收获项目是一个BT种子列表,用户有权限上传自己的种子,然后配合BT TRACK服务器把种子的信息写出来...2016-11-25
  • C++中 Sort函数详细解析

    这篇文章主要介绍了C++中Sort函数详细解析,sort函数是algorithm库下的一个函数,sort函数是不稳定的,即大小相同的元素在排序后相对顺序可能发生改变...2022-08-18
  • PHP用strstr()函数阻止垃圾评论(通过判断a标记)

    strstr() 函数搜索一个字符串在另一个字符串中的第一次出现。该函数返回字符串的其余部分(从匹配点)。如果未找到所搜索的字符串,则返回 false。语法:strstr(string,search)参数string,必需。规定被搜索的字符串。 参数sea...2013-10-04