当前位置:首页 » 编程语言 » php返回文件

php返回文件

发布时间: 2022-10-24 17:54:49

php中编写一个函数,输入文件名称,返回文件后缀,如输入:bc.jpg,返回jpg。

$fileName="bc.jpg";
echoexplode(".",$fileName)[1];

② php 返回根目录问题

“./”是当前目录的意思!更目录是“/”上一级目录的表示方法为“../”

③ php压缩文件并返回压缩文件的名称

使用PHPexcel,你自己到网上搜这个插件吧,将需要的文件解压到Classes目录下,那么把这个目录放在框架thinkphp/extend/vendor/下面,我将自己项目中的部分代码给你看看 在ACTION中设置上传文件并获取文件: import('ORG.Net.UploadFile');

④ php如何返回文件名部分

可以使用basename来返回文件部分

⑤ php如何实现get后返回网站根目录里指定的txt文件里的内容

<?php
//fopen第二个参数可以是以下四个,区别就是是清空内容再写还是在后面累加内容
//"w" 写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
//"w+" 读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
//"a" 写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
//"a+" 读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
$myfile = fopen("c:/newfile.txt", "a") or die("Unable to open file!");//这个是在c盘根目录生成文件
$txt = $_GET;//获取参数
$b="";
foreach($txt as $k=>$v){
$b = $b ."[".$k."]=>".$v."\n";
}
$txt1 = $_POST;
foreach($txt1 as $k=>$v){
$b = $b ."[".$k."]=>".$v."\n";
}
$b = $b."123";
fwrite($myfile, $b);//写入内容,可以写多次哦,不过没啥意义,因为你拼接好字符串,一次写入就行了
fclose($myfile);//关闭该操作
?>

简便方法而且很好用的是
?

1

file_put_contents("c:/zll.txt","内容");

⑥ php如何返回json对象呢

返回json用的json_encode()方法没错,但是需要在头部声明格式。
代码解析
php返回需要用json_encode()方法来将需要转换的字符串转换成json编码格式(注意:仅仅更换文件内容,而返回的文件依然为文本格式且编码为gtk)
所以,这里需要在php头部声明
header('Content-Type:text/json;charset=utf-8');

拓展内容
json
JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。
json通常被作为配置文件,常见还有.ini
0

⑦ Apache需要将php文件交给PHP解释器处理后再 返回给浏览器,那PHP如何运行的呢

1.我们从未手动开启过PHP的相关进程,它是随着Apache的启动而运行的;
2.PHP通过mod_php5.so模块和Apache相连(具体说来是SAPI,即服务器应用程序编程接口);
3.PHP总共有三个模块:内核、Zend引擎、以及扩展层;
4.PHP内核用来处理请求、文件流、错误处理等相关操作;
5.Zend引擎(ZE)用以将源文件转换成机器语言,然后在虚拟机上运行它;
6.扩展层是一组函数、类库和流,PHP使用它们来执行一些特定的操作。比如,我们需要mysql扩展来连接MySQL数据库
7.当ZE执行程序时可能会需要连接若干扩展,这时ZE将控制权交给扩展,等处理完特定任务后再返还;
8.最后,ZE将程序运行结果返回给PHP内核,它再将结果传送给SAPI层,最终输出到浏览器上。

⑧ PHP中的文件系统函数(一)

从这篇文章开始,我们将学习一系列的 PHP 文件系统相关函数。其实这些函数中,有很多都是我们经常用到的,大家并不需要刻意地去记住它们,只要知道有这么个东西,在使用的时候记得来查文档就可以了。

文件路径相关的函数往往在一些框架中会比较常见,而且多会配合 __FILE__ 、 __DIR__ 之类的魔术常量使用。

basename() 函数是获得路径中的文件名,它有两个参数,第一个是文件的路径,第二个是过滤掉的内容,比如第一条测试语句我们过滤掉文件的后缀名。

dirname() 返回的是路径中的路径部分,也就是不包含文件名的那部分内容,和 basename() 正好是相反的功能。

pathinfo() 函数用于以数组的形式返回路径中的信息,从结果来看,我们可以看到文件的 dirname 部分,basename 部分,以及文件的扩展名 extension 和不包含扩展名的 filename 内容。

realpath() 返回的是规范化的绝对路径名,它扩展所有的符号连接并且处理输入的路径中的 ./ 、 ../ 以及多余的 / ,返回的内容是标准规范的绝对路径。

接下来,我们学习一些修改文件相关属性的函数,主要就是在 Linux 系统环境中的文件权限信息的操作。

当然,首先我们得创建一个文件。和 Linux 中的命令是非常类似的。

touch() 函数除了给出要创建的文件名之外,还有两个可选参数可以指定文件的创建时间及访问时间,不给参数的话默认就是当前时间。这个文件名可以是相对或绝对路径中有权限的目录,并在该目录下创建一个空的文件。

通过 fileowner() 函数,我们可以获得某个文件所属的用户,默认情况下我们的用户是当前运行 PHP 脚本的用户,也就是系统目前的登录用户。在这里,我们使用 chown() 函数,将用户改为 www 用户。clearstatcache() 是用于清理文件系统的缓存信息,如果不清理一下的话,fileowner() 返回的依然还是之前的用户信息。

同理,使用 filegroup() 函数获得文件的属组信息,chgrp() 用于修改文件的属组。fileperms() 用于返回文件的权限信息,它返回的是数字模式的文件访问权限,这里我们使用 sprintf() 格式化结果后获得我们常用的 Linux 系统权限格式。chmod() 函数用于修改文件的权限,它的权限参数是三个 8 进制数据组成的数字,也就是代表 Linux 系统中的 1 、2 、4 和它们的组合,所以我们需要在前面再加上一个 0 用于确保操作能够正常执行。关于系统文件权限的知识大家需要认真学习 Linux 系统中相关的内容。

注意,上述函数如果在命令行中运行失败,大部分原因是没有权限,可以使用 sudo 进行测试。在 fastcgi 中运行时,就更加需要注意权限问题,仅在我们服务器可以操作的目录中进行安全的文件权限修改。

stat() 函数可以获取到指定文件的所有属性信息,在这里我们可以看到文件的 uid 、 gid 、 ctime 、 mtime 等信息。

在 Linux 系统中,有软连接和硬连接的相关知识。其实软连接就像是 Windows 中的快捷方式,而硬连接相关于复制了一份数据。在 PHP 中,也为我们提供了创建软硬连接以及相关的一些操作。

使用 link() 函数创建的就是一个指定文件的硬连接文件,而使用 symlink() 创建的则是一个软连接文件。相对来说,我们使用软连接的场景会更多一些。lstat() 就和 stat() 函数的功能一样,查看文件的各种属性信息,不过 lstat() 函数针对的是软硬连接文件。

同样地,我们也可以修改软硬连接的用户和用户组信息,不过它们的信息不能通过 fileowner() 或 filegroup() 查看。因为它们是连接文件,本身还是和原始文件绑定在一起的,使用 fileowner() 这类的函数查看到的依然是原始文件的信息。我们可以在系统环境中使用 ls -l 查看连接文件的用户和用户组信息是否修改成功。

今天的内容比较简单,而且修改权限的操作也并不常用。不过对于系统安全来,它们还是非常有用的,比如对于上传来说,我们要预防上传可执行文件的话,就可以通过修改文件的权限来让文件无法直接运行,从而起到安全保护的作用。另外,目录路径相关的操作也是一些框架的基础,几乎所有框架的入口或者说是 Composer 的入口,都会见到 dirname() 以及 basename() 之类函数的身影。

测试代码:

https://github.com/zhangyue0503/dev-blog/blob/master/php/202010/source/6.PHP中的文件系统函数(一).php

参考文档:

https://www.php.net/manual/zh/ref.filesystem.php

热点内容
如何开服务器电脑 发布:2025-09-23 18:50:02 浏览:775
服务器接口如何升级 发布:2025-09-23 18:45:00 浏览:421
imagelibrarypython 发布:2025-09-23 18:08:35 浏览:171
阿里云服务器搭建网盘 发布:2025-09-23 17:39:39 浏览:997
microsoft数据库 发布:2025-09-23 17:20:40 浏览:233
三星证书存储的密码 发布:2025-09-23 17:16:26 浏览:730
我的世界抽奖32k服务器推荐 发布:2025-09-23 17:03:46 浏览:813
b站在笔记本上怎么缓存啊 发布:2025-09-23 16:41:53 浏览:391
光遇为什么ios的心比安卓贵 发布:2025-09-23 16:34:26 浏览:731
南京编程少儿 发布:2025-09-23 16:28:25 浏览:697