php 自定义条件,PHP 用户自定义函数

本文介绍了四个PHP脚本实例,包括一个非周日执行的/var/log/目录备份脚本,一个每分钟检查指定文件存在的监控脚本,一个交互式菜单系统,提供日历、备份和手册页查看功能,以及一个从namen.txt文件中搜索特定名字并显示相关名字列表的脚本。这些脚本展示了PHP在日常任务自动化和用户交互方面的应用。
摘要由CSDN通过智能技术生成

oefening 3

Het script maakt op alle dagen behalve zondag een backup van de folder /var/log/ in de vorm van een tar.gz-bestand met als naam backup_dagmaandjaar.tar.gz

#!/usr/bin/php5

$tijd=getdate();

if ($tijd["wday"] ==0) exit;$dag=$tijd["mday"];$maand=$tijd["month"];$jaar=$tijd["year"];$cmd="tar -czf backup-".$jaar."_".$maand."_".$dag.".tar /var/log";system($cmd);?>Oefening 4

Om de minuut test het script of het bestand met de opgegeven naam bestaat. Van zodra het bestand bestaat wordt de melding "naam_bestand now exists" getoond en wordt het script gestopt.

#!/usr/bin/php5

for (;;) {

if(file_exists($argv[1])) {

echo"Hoera\n";

exit;

}sleep(60);

}?>Oefening 5

Maak een menu met volgende keuzemogelijkheden:

1) Kalender

2) Backup

3) Manpage

4) Einde

De menu-opdrachten voeren het volgende uit:

Kalender

De kalender van het huidige jaar wordt pagina per pagina getoond (verder gaan met enter).

#!/usr/bin/php5

echo"1. kalender\n";

echo"2. backup\n";

echo"3. manpage\n";

echo"4. exit\n";$input=readline("maak een keuze: ");

if ($input=="1")kalender();

if ($input=="2")backup();

if ($input=="3")manpage();

if ($input=="4") exit;

}

functionkalender() {

for ($maand=1;$maand<13;$maand++) {system("clear");system("cal -m$maand");readline("druk enter om verder te gaan");

}

}

functionbackup() {

for (;;) {$filename=readline("De naam van je backup: ");$dir=readline("Directory voor backup: ");

if ((!empty($filename)) && (!empty($dir))) break;

}

if (file_exists($dir)) {$command="tar -czf backup-".$filename.".tgz ".$dir." > /dev/null";system($command);

} else {

echo("De map bestaat niet. \n");

}

}

functionmanpage() {$command=readline("Kies een commando: ");system("man ".$command,$returnvalue);

if ($returnvalue!=FALSE) {

echo("Geen manpage gevonden\n");

}readline("Druk een toets om verder te gaan");

}?>Oefening 6

Het bestand namen.txt bevat een aantal namen. Maak een scriptje  dat als argument op de commandolijn een naam heeft.

Indien de naam gevonden wordt in het bestand namen.txt:

Er wordt op het scherm een alfabetische lijst met deze namen afgedrukt.

Na deze lijst wordt er getoond hoeveel namen dit zijn. Geef deze melding de volgende vorm: "Gevonden: 3" -> indien er drie namen gevonden werden.

Indien de naam niet gevonden werd, geef je de melding "Niets gevonden".

#!/usr/bin/php5

echo"je moet een naam opgeven\n";

exit;

}$naam=$argv[1];$content=file("namen.txt",FILE_IGNORE_NEW_LINES);sort($content);

if (in_array($naam,$content)) {

foreach($contentas$line) {

echo$line."\n";

}

echo"Het bestand bevat ".count($content) ." namen.\n";

}?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值