当前位置:  编程技术>php
本页文章导读:
    ▪php基础教程之php文件操作概述      本节教程开始讲解如何与文件进行交互。以帮助大家理解PHP中的所有类型的文件操作! php文件操作的注意事项 在php中对文件操作,一定要非常谨慎。 常见的错误包括编辑了错误的文件,用.........
    ▪php基础教程之echo命令      PHP的命令echo输出文本到Web浏览器的一种手段。 纵观你的PHP的职业生涯中,您将使用echo命令比其他任何命令,都要经常的多。 所以,让我们给它一个坚实的认真仔细地阅读吧! 输出一个字符.........
    ▪yii中使用memcache的实例分享      在yii中可以很方便的使用memcache配置。 在main.php的components中加入cache配置: array( 'components'=>array( 'cache'=>array( 'class'=>'CMemCache', 'servers'=>array( .........

[1]php基础教程之php文件操作概述
    来源: 互联网  发布时间: 2013-12-24

本节教程开始讲解如何与文件进行交互。以帮助大家理解PHP中的所有类型的文件操作!

php文件操作的注意事项

在php中对文件操作,一定要非常谨慎。
常见的错误包括编辑了错误的文件,用垃圾数据填补了硬盘驱动器和意外删除了文件的内容。

在日常的php开发中,对于文件操作这一块,应该合理的使用方法,并做好异常的捕获等,以最大可能的避免不必要的误操作,甚至重大的文件安全故障。

php文件操作概述

学习php的文件操作,需要了解如何创建,打开和关闭文件。
有了这些基础知识后,我们将学习文件的基本操作,包括:读,写,追加,截断,用PHP上传文件等。

下面开始php文件操作中的最简单部分,带领大家掌握在php中创建文件的方法。

PHP文件的创建

在这一节中,学习如何使用PHP创建一个文件。

在php中,一个有趣的现象,可以用fopen打开与创建文件,都可以使用此方法。

在PHP中使用fopen函数打开文件。
它也可以创建一个文件,如果它没有找到函数调用中指定的文件。
所以,如果使用fopen打开一个不存在的文件,它会创建它。
另外,用fopen打开文件时,可以进行写入或追加,这个后面会有介绍。

php如何创建一个文件

fopen函数有两个重要的参数。
首先,必须提供的文件名。
其次,必须告诉这个方法将要进行哪些操作,比如从文件中读取,写入信息等。

要创建一个文件,则必须提供一个文件名,并告诉PHP,要写入一个文件。
参考代码:

<?php
//创建文件
//by www.
$ourFileName = "testFile.txt";
$ourFileHandle = fopen($ourFileName, 'w') or die("can't open file");
fclose($ourFileHandle);
?>

代码说明:
在当前目录下创建文件testFile.txt。
创建程序检测到文件testFile.txt并不存在,又检测到方法中用到了'w'选项,就会创建该文件。

$ourFileName = "testFile.txt";
将待创建的文件:testFile.txt 存储到一个PHP字符串变量$ ourFileName中。

$ourFileHandle = fopen($ourFileName, 'w') or die("can't open file");
此段代码实际上有两个部分。
首先,使用fopen方法的打开功能,并提供了两个参数:文件名、及通配字符'w',表示如果该文件不存在,则以写入方式创建它。

这里提前说下,什么是文件句柄,当用fopen函数操作相关文件时,即会返回一个文件句柄。
这里将文件句柄保存到$ ourFileHandle变量中,有关文件句柄的更多内容,在以后的文章中会详细介绍。

fclose($ourFileHandle);
此句是关闭打开的文件。
fclose接收一个参数,即要被关闭的文件句柄。

php文件权限

除了以上fopen函数中的可写参数'w',或以后要讲到的'a'选项外。
在运行php的文件操作程序之前,还要检查是否已授予PHP文件将信息写入到硬盘驱动器的许可权限。

在linux系统中,设置权限使用chmod命令,使用chmod允许PHP文件写入到磁盘上,从而使其能够创建一个文件。

有关php文件操作的基础知识,就介绍这些吧,希望对大家有所帮助。

更多php文件操作的教程,请关注后续提供的文章。


    
[2]php基础教程之echo命令
    来源: 互联网  发布时间: 2013-12-24

PHP的命令echo输出文本到Web浏览器的一种手段。

纵观你的PHP的职业生涯中,您将使用echo命令比其他任何命令,都要经常的多。

所以,让我们给它一个坚实的认真仔细地阅读吧!

输出一个字符串

要输出一个字符串,就像我们在前面的课程中完成,使用PHP的echo。

您可以将其中一个字符串变量,或您可以使用引号,像我们这样的下面,创建一个字符串echo功能将输出。

代码:

<?php
$myString = "Hello!";
echo $myString;
echo "<h5>I 喜欢 PHP!</h5>";
?>

结果:
Hello!
I 喜欢 PHP!

在上面的例子中,我们输出“Hello!”顺利。我们输出的文本被发送给用户的形式的网页,所以重要的是,我们使用适当的HTML语法!

我们在我们的第二个echo语句使用echo写一个有效的头5 HTML语句。要做到这一点,我们干脆把<H5>开头的字符串,并关闭它在结尾的字符串。仅仅因为你使用PHP使网页并不意味着你可以忘记HTML语法!

小心呼应引号!

可以输出HTML与PHP。但是,你必须要小心,当使用HTML代码或其他任何字符串,包括引号!echo使用引号来定义字符串的开头和结尾,所以你必须使用以下策略之一,如果你的字符串包含引号:

不要使用引号里面你的字符串

逃脱你的引号是用一个反斜杠在字符串中。只是为了逃避引号直接放置一个反斜杠前引号,即\“
引号里面的字符串使用单引号(撇号)。
请参阅下面的例子中,正确的和错误的使用回显示:

代码:

<?php
// This won't work because of the quotes around specialH5!
echo "<h5 >I love using PHP!</h5>";  

// OK because we escaped the quotes!
echo "<h5 specialH5\">I love using PHP!</h5>";  

// OK because we used an apostrophe '
echo "<h5 >I love using PHP!</h5>";  
?>

如果你想输出一个字符串,其中包括引号,请使用单引号(')或逃脱的引号,它前面放置一个反斜杠(\“)。反斜杠告诉PHP您希望引号内使用,串并没有被用来结束echo的字符串。

呼应变量
赞同变量是很容易的。 PHP语言的开发投入一些额外的工作,使所有的变量几乎万无一失呼应的共同任务!无引号是必需的,,,即使变量不持有串。
下面是正确的格式呼应变量。

代码:
 

<?php
$my_string = "Hello Bob.  My name is: ";
$my_number = 4;
$my_letter = a;
echo $my_string;
echo $my_number;
echo $my_letter;
?>

结果:
Hello Bob. My name is: 4a

呼应变量和文本字符串

您也可以将里面的双引号字符串变量(例如“字符串和变量”)。通过把一个变量里面的引号(“”),你是在告诉PHP,你想让它抓住该变量的字符串值,并用它在字符串。
来看下面的例子。
代码:
 

<?php
$my_string = "Hello Bob.  My name is: ";
echo "$my_string Bobettta <br />";
echo "Hi, I'm Bob.  Who are you? $my_string <br />";
echo "Hi, I'm Bob.  Who are you? $my_string Bobetta";
?>

结果:
Hello Bob. My name is: Bobetta
Hi, I'm Bob. Who are you? Hello Bob. My name is:
Hi, I'm Bob. Who are you? Hello Bob. My name is: Bobetta

通过将一个字符串变量里面,你可以保存自己一些时间,使你的代码更易于阅读,但它确实需要一些时间来适应。
记住要使用双引号,不会抢单引号的字符串值。单引号将只是输出变量名的字符串,喜欢)$ my_string),而不是(你好我的名字是鲍勃。:)。

PHP的echo - 不是一个函数
echo是不是一个功能,而是它是一个语言结构。当您使用函数在PHP中,他们有一个非常特别的形式,这是我们将要在后。
现在,只需知道echo是一种特殊的工具,你会来了解和热爱它的!

有关php中echo回显内容的这个命令,就介绍到这里了,希望对大家有所帮助。


    
[3]yii中使用memcache的实例分享
    来源: 互联网  发布时间: 2013-12-24

在yii中可以很方便的使用memcache配置。
在main.php的components中加入cache配置:

array(  
    'components'=>array(  
  
        'cache'=>array(  
            'class'=>'CMemCache',  
            'servers'=>array(  
                array(  
                    'host'=>'server1',  
                    'port'=>11211,  
                    'weight'=>60,  
                ),  
                array(  
                    'host'=>'server2',  
                    'port'=>11211,  
                    'weight'=>40,  
                ),  
            ),  
        ),  
    ),  
)

说明:
1)class指明所有缓存类,CMemCache即为memcache
2) 当要使用多个cache轮询时,可以给每个cache配权重(weight)。如果只有一个cache,不加这个配置就可以了。

二,使用
调用memcache的方法:

<?php
$key = 'people';   
$value = json_encode(array('name'=>'ball', 'age'=>'male'));   
$expire = 10;   
yii::app()->cache->set($key, $value, $expire);   
Yii::app()->cache->get($key);   
Yii::app()->cache->delete($key);  
?>

更多api请参阅yii手册CMemCache部分。

三,问题
当你统一使用yii的扩展对memcache进行存取时,不会有什么问题。但现实中会有这么一种情况:你在使用yii开发后台,但前台的同学并未用yii,而是使用了原生的memcache api对数据进行操作。这时会遇到一些问题。
如上文二中的例子,如果使用原生的memcache api,Memcache::get,用people作key是取不到值的!
原因是,yii的set对key和value都做了处理。默认情况下,对key加前缀并做md5变换,对value进行serialize()。这就难怪使用Memcache::get('people')取不到值了。

解决:
简单的方法,可以通过配置,让yii的memcache扩展不进行额外的"小动作"。

<?php
'cache' => array(      
    'class' => 'system.caching.CMemCache',   
    'servers' => array( array('host' => '127.0.0.1', 'port' => 11211)),  
    'keyPrefix' => '',   
    'hashKey' => false,   
    'serializer' => false)   
?>

其中:
keyPrefix:key的前缀,默认用CApplication::getId()方法生成。
hashKey:对key进行hash操作,默认md5
serializer:value的序列化方法,默认serialize
将这些都置空,扩展的行为就同原生Memcache一致了。

四,更多memcache方法调用
yii扩展中,只有memcache的最常用操作,并没有类似原生memcache的decrement和increment等操作。
不过可以使用扩展中的getMemCache方法获得原生memcache对像,然后就可以使用原生方法了。

<?php
$mem = Yii::app()->cache->getMemCache();  
$res = $mem->decrement($key);  
?>

使用原生方法时,最好设置上文(三)中提到的配置,不然同时使用yii的扩展方法和memcache的原生方法会产生错误。


    
最新技术文章:
▪PHP函数microtime()时间戳的定义与用法
▪PHP单一入口之apache配置内容
▪PHP数组排序方法总结(收藏)
▪php数组排序方法大全(脚本学堂整理奉献)
▪php数组排序的几个函数(附实例)
▪php二维数组排序(实例)
▪php根据键值对二维数组排序的小例子
▪php验证码(附截图)
▪php数组长度的获取方法(三个实例)
▪php获取数组长度的方法举例
▪判断php数组维度(php数组长度)的方法
▪php获取图片的exif信息的示例代码
▪PHP 数组key长度对性能的影响实例分析
▪php函数指定默认值的方法示例
▪php提交表单到当前页面、提交表单后页面重定...
▪php四舍五入的三种实现方法
▪php获得数组长度(元素个数)的方法
▪php日期函数的简单示例代码
▪php数学函数的简单示例代码
▪php字符串函数的简单示例代码
▪php文件下载代码(多浏览器兼容、支持中文文...
▪php实现文件下载、支持中文文件名的示例代码...
▪php文件下载(防止中文文件名乱码)的示例代码
▪解决PHP文件下载时中文文件名乱码的问题
▪php数组去重(一维、二维数组去重)的简单示例
▪php小数点后取两位的三种实现方法
▪php Redis 队列服务的简单示例
▪PHP导出excel时数字变为科学计数的解决方法
▪PHP数组根据值获取Key的简单示例
▪php数组去重的函数代码示例
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3