PHP的资源类型
PHP的资源类型
php的资源类型
常见的有:打开文件、数据库连接、图形画布等。
常用操作:创建、使用、释放。
以文件操作为示例:
//文件路径
$file_url = './data.txt'; //创建文件资源
$file_handle = fopen($file_url,'r');
var_dump($file_handle);
//如果文件打开成功,返回:resource(3) of type (stream)
//如果文件打开失败,返回:bool(false) 和错误信息 //打开成功,获取资源的类别
$a = get_resource_type($file_handle);
var_dump($a);//stream //关闭资源后,重新查看资源类别
fclose($file_handle);
$a = get_resource_type($file_handle);
var_dump($a);//Unknown
逐行读取文本信息示例:
$file_url = './data.txt';
$file_handle = fopen($file_url,'r');
if($file_handle){
while(!feof($file_handle)){
$line = fgets($file_handle);
echo $line;
echo '<br/>';
}
fclose($file_handle);//成功返回值bool(true)
//$file_handle 的值变为 resource(3) of type (Unknown)
}else{
echo 'open file fail';
//注意:资源打开失败,不需要执行fclose。
}
总结:
fopen()打开一个文件。
feof()判断是否到文件结束。
fgets()获取一行的信息。
fclose()关闭资源。
get_resource_type()获取资源的类别。
PHP的资源类型的更多相关文章
- PHP资源类型
在PHP中,我们经常使用到资源类型变量.例如:mysql连接.文件句柄等. 这些变量无法使用标量来表示,那么在Zend内核中是如何将PHP中的资源变量与C语言中的资源衔接的呢? 一.资源变量在PHP中 ...
- php扩展开发-资源类型
资源类型在内核中的结构 //zend_list.h typedef struct _zend_rsrc_list_entry { void *ptr; int type; int refcount; ...
- [置顶]
kubernetes资源类型--PetSets/StatefulSet
PetSet首次在K8S1.4版本中,在1.5更名为StatefulSet.除了改了名字之外,这一API对象并没有太大变化. 注意:以下内容的验证环境为CentOS7.K8S版本1.5.2,并部署Sk ...
- [置顶]
kubernetes资源类型--持久化存储Persistent Volume和Persistent Volume Claim
概念 存储管理跟计算管理是两个不同的问题.理解每个存储系统是一件复杂的事情,特别是对于普通用户来说,有时并不需要关心各种存储实现,只希望能够安全可靠地存储数据. 为了简化对存储调度,K8S对存储的供应 ...
- PHP-Manual的学习----【语言参考】----【类型】-----【Resource 资源类型】
2017年8月24日11:29:361.资源 resource 是一种特殊变量,保存了到外部资源的一个引用.资源是通过专门的函数来建立和使用的.2.由于资源类型变量保存有为打开文件.数据库连接.图形画 ...
- 关于k8s资源类型和缩写
资源类型 缩写 描述 clusters componentstatuses cs configmaps cm daemonsets ds deployments deploy ...
- 现代Web的资源/类型/元素--发展趋势
5月6日,谷歌开发者中心推出了一个 Web 开发最佳实践手册.伯乐在线资源频道摘编该资源后,已邀请一些关注 Web 开发的朋友参与翻译手册. 由于译者朋友几乎都是已在职,都是在工作之余参与,每位的翻译 ...
- Kubernets 资源类型简介
# Node 代表 Kubernets 集群运行的宿主物理机或者虚拟服务器, 为容器提供必要的计算资源: 内存 与 CPU 等. # Pod 最底层的抽象. 一个 Pod 中可以包含一个或者多个运行的 ...
- Android的资源类型和存储方式简介-android学习之旅(五十二)
android资源的类型 android资源的存储方式
随机推荐
- 动态栅格(DEM)图层实现服务端渲染
PS:此处动态图层指,图层文件都放在经过注册的文件目录里,可以通过文件名动态加载图层 动态加载的矢量图层,可以实现客户端和服务端的定制渲染,但栅格一般是不能再渲染的,以下介绍可行的方法 建立一个很简单 ...
- Eclipse 闪退/无法启动/一闪而过打解决办法
解决方法 删除文件:/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi 经过实际应用真实有效.
- laravel学习笔记(三)
模型传值 路由: Route::get('/posts/{post}','\App\Http\Controllers\PostController@show'); 方法: public functio ...
- select2宽度占比100%,导致无法实现浮动效果
- iview table 勾选当前行代码 data key _checked: true
给 data 项设置特殊 key _checked: true 可以默认选中当前项
- redis基础一_常用指令
# Redis configuration file example. # # Note that in order to read the configuration file, Redis mus ...
- Xgboost集成算法
集成算法思想: Xgboost基本原理: Xboost中是一个树(函数)接着一个树(函数)往里加,每加一个树都希望整体表达效果更好一些,即:目标函数逐步减小. 每加入一个函数,使目标函数逐渐减小,整体 ...
- Java Web 之 Jsp 常用语法总结
一.小脚本语法 <% code fragment %> 语法编写为XML的形式,效果相同,如下所示: <jsp:scriptlet> code fragment </js ...
- python爬虫---从零开始(一)初识爬虫
我们开始来谈谈python的爬虫. 1,什么是爬虫: 网络爬虫是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.另外一些不常使用的名字还有蚂蚁.自动索引.模拟程序或者蠕虫.互联网犹如一个大蜘蛛 ...
- loadClass和forName 的区别
类的加载方式 1.隐式加载:new 2.显式加载,loadClass,forName 等 loadClass 和 forName的区别 类的装载过程 1.加载:通过classLoader加载class ...