我正在使用Perl程序,只需使用打开,打印,关闭的典型函数就可以写入XML文件.XML文件稍后由PHP Web应用程序消化.
#!/usr/bin/perl
#opening file
open FILE, ">derp.xml" or die $!;
#data is created in variables like so...
$first = '<\?xml version=\"1.0\" encoding=\"UTF-8\" \?>';
$openperson = '<person>\n';
$name = '<name>Gary</name>\n';
$birthday = '<brithday>01/10/1999</birthday>\n';
$car = '<car>minivan</car>\n';
$closeperson = '</person>\n';
#writing variables to file
print FILE $first;
print FILE $openperson;
print FILE $name;
print FILE $birthday;
print FILE $car;
print FILE $closeperson;
close FILE;
Run Code Online (Sandbox Code Playgroud)
或多或少这基本上是当前系统的工作方式.我相信一定有更好的方法.
我们在公司内部安装了私人MediaWiki.基于我们源代码的每日构建,我们使用Perforce标签更新Wiki,以便人们可以使用标记为简化流程的构建.我们尝试使用MediaWiki :: Bot和MediaWiki :: API在Windows服务器上使用Perl脚本自动执行此操作.
use MediaWiki::Bot;
use MediaWiki::API;
my $mw = MediaWiki::API->new();
$mw->{config}->{api_url} = 'http://somewiki/w/index.php/title#feature_List';
# log in to the wiki
$mw->login({
lgname => 'username',
lgpassword => 'password'
|| die $mw->{error}->{code} . ': ' . $mw->{error}->{details};
# get a list of articles in category
my $articles = $mw->list({
action => 'query',
list => 'categorymembers',
cmtitle => 'Category:Perl',
cmlimit => 'max'
}) || die $mw->{error}->{code} . ': ' . $mw->{error}->{details};
# and print the article titles …Run Code Online (Sandbox Code Playgroud) 如何在Perl脚本中获取当前域名,即$_SERVER['HTTP_HOST']PHP变量的等效Perl代码?
我正在使用现有的函数来读取文件.
sub testRead {
my $file = shift;
open(DATA, "$file") || die "Can not open $file: $!";
my $title = <DATA>;
chomp($title);
my @names = split(/\t/, $title);
shift(@names);
my @data = ();
my $row = 0;
while(<DATA>) {
chomp;
my @line = split(/\t/);
for my $i (1 .. $#line) {
$data[$i-1][$row] = $line[$i];
}
$row ++;
}
close DATA;
return (\@data, \@names);
}
Run Code Online (Sandbox Code Playgroud)
我一般可以理解这个功能是做什么的,但我不太确定my $title = <DATA>;.我知道<DATA>代表文件句柄,但这行代码到底要做什么?此外,做什么chomp($title);和shift(@names);打算做什么?而且,在while(<DATA>)循环中,有一行代码chomp;,它有什么作用?
I need to get f_type from statfs. I tried patching Filesys::Df:
---
Df.pm | 6 +++---
Makefile.PL | 7 +------
XS_statfs | 1 +
3 files changed, 5 insertions(+), 9 deletions(-)
diff --git a/Df.pm b/Df.pm
index b24bd9c..986082a 100644
--- a/Df.pm
+++ b/Df.pm
@@ -28,7 +28,7 @@ my %fs = ();
($block_size) ||
($block_size = 1024);
- my ($frsize, $blocks, $bfree, $bavail, $files, $ffree, $favail);
+ my ($frsize, $blocks, $bfree, $bavail, $files, $ffree, $favail, $ftype);
#### If open filehandle …Run Code Online (Sandbox Code Playgroud)