知识学习

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 6317|回复: 2

php中的unlink(),unset(),rmdir()删除函数

[复制链接]

升级   100%

152

主题

0

回帖

752

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
752
发表于 2022-6-25 21:41:17 | 显示全部楼层 |阅读模式
1、这是php手册中的解释:http://www.php.net/manual/zh/function.unset.php
用法:

  1. <p>$a = 1;</p><p>unset($a);</p>
复制代码



PHP的unset()函数用来清除、销毁变量,不用的变量,我们可以用unset()将它销毁。但是手册中也明确说了,unset()函数不能销毁全局变量。

2、关于释放内存


unset()函数并不能直接的释放变量,只是变量计数器减1,,当计数器为0的时候会触发回收。特别是当变量被引用的时候,只会销毁变量,但不会释放内存。

如果要释放内存的话,不如用:
  1. <p>//先清空变量</p><p>$a = null;</p><p>unset($a);</p>
复制代码


4、unset使用场景

在很多情况下,可以让 PHP 自动管理变量而无需考虑 unset() 变量。只有在特定的,需要某个变量必须为空的时候才使用到。如:用户退出登录时,为了确保信息的安全性,可以用 unset() 清空 session 的内容。

二、unlink()
1、函数的定义
unlink() 函数用于删除文件。若成功,则返回 true,失败则返回false.

  1. <p>//删除文件</p><p>  $to_link = 'C:\Users\Administrator\Desktop\cut.jpg';</p><p>   @unlink($to_link);</p>
复制代码


2、@unlink()

有时候会看到用@unlink()来删除文件。这个@是php中的错误抑制符。比如当你要删除不存在的文件,正常使用unlink()是要报错的。但是使用@unlink() 的话,则不会报错。

3、@错误抑制符

@是可以屏蔽函数执行过程中遇到问题而产生的一些错误、警告信息,这样用户就看不到程序的出错信息。这样除了用户界面会友好一些外,更重要的是安全性,因为屏蔽了出错文件的路径等信息。

三、rmdir()
1、定义
rmdir() 函数删除空的目录。
若成功,则该函数返回 true。若失败,则返回 false。

2、rmdir()使用背景
一般来说,这个函数都是为了删除空目录的。有时候我们需要删除非空目录。那么我们就需要先进入目录中,使用unlink()循环删除文件,然后再用rmdir()函数删除空目录
代码如下:

  1. <p><?php  </p><p>/* by http://www.manongjc.com/article/27.html*/  </p><p>function delDir($directory){//自定义函数递归的函数整个目录  </p><p>
  2. </p><p>if(file_exists($directory)){//判断目录是否存在,如果不存在rmdir()函数会出错  </p><p>
  3. </p><p>if($dir_handle=@opendir($directory)){//打开目录返回目录资源,并判断是否成功  </p><p>
  4. </p><p> while($filename=readdir($dir_handle)){//遍历目录,读出目录中的文件或文件夹  </p><p>
  5. </p><p>    if($filename!='.' && $filename!='..'){//一定要排除两个特殊的目录  </p><p>         $subFile=$directory."/".$filename;//将目录下的文件与当前目录相连  </p><p>           if(is_dir($subFile)){//如果是目录条件则成了  </p><p>                delDir($subFile);//递归调用自己删除子目录  </p><p>               }  </p><p>            if(is_file($subFile)){//如果是文件条件则成立  </p><p>                 unlink($subFile);//直接删除这个文件  </p><p>               }  </p><p>                }  </p><p>            }  </p><p>            closedir($dir_handle);//关闭目录资源  </p><p>            rmdir($directory);//删除空目录  </p><p>        }  </p><p>    }  </p><p>}  </p><p>delDir("mydir");//调用delDir函数  </p><p>
  6. </p><p>?></p>
复制代码

处理递归删除非空目录外,我们也可以使用操作系统命令“rm -rf”删除非空的目录,但也要从安全和跨平台方面考虑尽量不要去使用。


四、句柄
      我们在php手册时候应该也发现了,总是会说句柄这个词,那么句柄的定义到底是什么呢,这边我也是百度了一下,算是给自己科普科普

1.定义:

      你的应用程序往往要对对象(数据文件, 自定义的数据结构等)做一些操作, 而句柄可以简单地理解为是指向这些对象的一个指针. 在你的程序启动之后, 这些对象在内存中并非是一成不变的, 一方面由于处理器调度等原因, 另一方面现在的操作系统大多基于虚拟内存空间, 在这种情况下, 内存管理器会经常来回移动对象, 以此来满足当前运行的需要, 那如果说我们寻找对象的方式仅仅是依靠一个指针 —- 指向了一个固定的内存地址, 那么显然是没办法应对不断变化的实际内存, 所以, 句柄可以说是一个指向指针的指针, 它本身虽然没有直接指向对象, 但是可以通过它来获知对象在内存上的变动情况, 然后间接地获取对象

      也就是说, 实际对象在内存里的地址通常是不固定的, 而固定的句柄则描述了相应对象在内存里的位置

句柄是指向指针的指针,有一个解释非常好:

“对象就比如你对象,句柄就好比你对象的手机号码,你不必时时刻刻关心你对象在哪里干嘛,你只要有需要的时候打ta电话就能找到,连释放的时候都可以一个电话说:我们分手了。”



      ok,以上就是对于php的unset()函数,unlink()函数,rmdir()函数的总结。一句话一来,unset()用于销毁变量,unlink()用于删除文件。rmdir()用于删除空目录。


回复

使用道具 举报

升级   28%

0

主题

3

回帖

14

积分

新手上路

Rank: 1

积分
14
发表于 2025-8-21 10:09:13 | 显示全部楼层

Great reading too 19 !

Hello guys
Hi. A 19 fine site 1 that I found on the Internet.
Check out this site. There's a great article there. <a href=https://echoboomer.pt/o-que-muda-com-a-nova-lei-do-teletrabalho/>https://www.technik-smartphone-news.de/top-5-der-kostenlosen-sport-streaming-sites-von-2022/</a>|

There is sure to be a lot of useful and interesting information for you here.
You'll find everything you need and more. Feel free to follow the link below.
回复

使用道具 举报

升级   8%

0

主题

1

回帖

4

积分

新手上路

Rank: 1

积分
4
发表于 2025-9-30 01:15:08 | 显示全部楼层

адвокат Днепр цена

ВОЕННЫЙ АДВОКАТ

АДВОКАТ ПО ВОЕННЫМ ДЕЛАМ
адвокат Запорожье бесплатная консультация
— это опытный специалист имеющий высшее юридическое образование, сдавший квалификационный государственный экзамен на право осуществления адвокатской деятельностью и специализирующийся в основном на военных делах, таких как:
военный юрист
всевозможные юридические консультации по военному законодательству. Юридические консультации военного адвоката осуществляются на платной основе онлайн и непосредственно в офисах военного адвоката (адреса указаны в разделе контакты)
адвокат по военным делам
мобилизация в военное время, освобождение от мобилизации и отсрочка от призыва на воинскую службу по законным основаниям. Освобождение и смягчение ответственности при нарушении правил мобилизации и постановки на воинский учет
выезд за границу военнообязанных, призывников, военнослужащих, волонтеров и лиц состоящих на воинском учете. Практическая помощь, советы, составление документов, посещение военкоматов и военно-гражданских администраций для получения разрешения на выезд
оспаривание актов и выводов военно-врачебной комиссии пригодности или не пригодности к прохождению воинской службы в ВСУ. Обжалование выводов и заключений ВЛК осуществляется в досудебном и судебном порядке, путем подачи административного иска в суд и назначения независимой судебно-медицинской экспертизы
процедура постановки и снятия с воинского учёта в военное время, исключение с воинского учета, смена или изменение места жительства военнослужащих в военное время. Процедура осуществляется как с личным участием военнообязанного так и без него – адвокатом по военным делам самостоятельно
поступление на воинскую службу, прохождение воинской службы, перевод в иную часть и увольнение с воинской службы, увольнение с контракта в Вооружённых силах Украины, увольнение с добровольческого батальона или батальона территориальной обороны. Грамотное составление военным адвокатом рапортов на увольнение со службы, жалоб вышестоящему руководству, при необходимости- административных исков в суды
помощь в получение статуса участника боевых действий, АТО, ССО, статуса военнослужащих добровольческих батальонов территориальной обороны. Взыскание причитающихся сумм с министерства обороны в связи с приобретением статуса УБД
юридические услуги в получении земельных участков ветеранам и участникам УБД. Помощь в улучшении жилищных условий военнослужащих, получение квартир и иного жилья, автомобилей для инвалидов войны
защита от уголовного преследования военнослужащих. Помощь при уголовном обвинении военнослужащих в неповиновении, дезертирстве, оставление поля боя, самовольное оставление части (СЗЧ), утрата военного имущества, уклонение от воинской службы, нарушение уставных правил караульной службы, добровольная сдача в плен, мародёрство, плохое обращение с военнопленными, неподчинение приказам командиров и иные. Военный адвокат по уголовным делам осуществляет полное или частичное юридическое сопровождение или защиту по указанным категориям уголовных дел, с целью добиться невиновности военнослужащего в суде, смягчения наказания или полное освобождение от уголовной ответственности. Все осуществляется военным адвокатом в каждом случае индивидуально
защита военнослужащих по делам об административных правоотношений касательно прохождения военной службы. Особо популярно в последнее время, когда безосновательно, порой из-за личных неприязненных отношений командира и военнослужащего, составляются материалы о совершении административного правонарушения с целью лишения боевых выплат, ареста и помещения непослушного а и иногда патриотически настроенного военнослужащего на гауптвахту
начисление льгот, пенсий, социальных выплат военнослужащим, перерасчёт пенсий ветеранам, военным в запасе, сотрудникам пенитенциарной службы, сотрудникам МВД. Проверяем правильность начисления, перерасчета пенсий, обжалуем в суде неправомерные решения должностных лиц пенсионного фонда и повышаем размер выплат в установленном законом порядке
установление факта причинения телесного повреждения при боевых действиях или прохождении воинской службы, смерти военнослужащих. Проверяем правильность выплат семьям потерпевших военнослужащих денежных сумм, установление фактов без вести пропавших и выплата семьям погибших компенсации. Сопровождаем судебные процессы против Министерства обороны Украины и иных органов
осуществляем и сопровождаем различные судебные споры с командованием и вышестоящим руководством, оказываем правовую помощь при обмене пленных. Включая, посещение военнослужащих в ИВС, СИЗО на гауптвахте, защита в судебных заседаниях, дисциплинарных комиссиях министерства обороны
проверяем правильное назначение и взыскание денежного и вещевого довольствия военнослужащим, боевых выплат, оформление инвалидности военнослужащим и иных положенных действующим законодательством выплат, льгот и компенсаций.
https://services.advokats-zp.com.ua/
адвокаты Запорожье
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|知识学习 ( 鲁ICP备20015483号 )

GMT+8, 2026-5-13 21:51 , Processed in 0.063046 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表