PACKAGE NAME: asdf PACKAGE SIZE: 8k PACKAGE LOCATION: www.asdf.com/asdf-package.html
目前,我正在使用它收集这些信息,但它根本不适用于第一行和第三行:
$data4 = file('www.asdf.com/PACKAGES.TXT'); //the text file above
for ($i = 0, $found = FALSE; isset($data4[$i]); $i++) { //$i is the counter.
/*$package2 consists of the word searched and a constant string: "PACKAGE NAME: */
if (trim($data4[$i]) === $package2) {
$fdas = trim($data3[++$i]); //$fdas is going to hold the url info
echo ($find2); //$find2 is the original package name.
echo("<br/>"); //two breaks
echo("<br/>");
//the lines below handle making a link from a URL and custom package location
$finout = strstr($fdas, '.'); //
$secondfinout = "http://www.asdf.com/".$finout;
echo("<a href='$secondfinout'>$secondfinout</a>");
$found = TRUE;
break;
}
}
第二步是我现在写的脚本。它不起作用。我确实有更简单的那些遵循相同的概念工作,唯一的问题是strstr($ fdas,'。');在网址中加一个点。我不得不在某个地方启动字符串,并省略了不属于网址的部分,点似乎是我唯一的选择,有没有办法可以删除它?
非常感谢您的任何意见,我理解这是一个冗长的问题,所以请随时回答您的意见。我应该注意,php脚本是由javascript / html表单启动的,然后POST传递给PHP。我相信这一切都正常。
谢谢。
答案 0 :(得分:3)
您可以对比较强制执行案例:
if (strtolower(trim($data4[$i])) === strtolower($package2)) {
或做一些现实世界的执法,比如如果他们输入坏的数据,就会通过woodchipper运行人员。这些天工人很多,而且一般都是一次性的,所以看到数据录入的人变成番茄酱,应该会提升工作场所满意度。
答案 1 :(得分:1)
1)您可以使用正则表达式和preg_replace。 Regular Expression References
2)我想如果您想要txt文档的第一行和第三行,可以使用以下代码:
$data4 = file('www.asdf.com/PACKAGES.TXT');
$firstLine = $data4[0]; //PACKAGE NAME: asdf
$thirdLine = $data4[2]; //PACKAGE LOCATION: www.asdf.com/asdf-package.html
3)如果你想从第三行获取URL,你可以找到preg_match的正斜杠:
preg_match('/\/(\S+)/',$thirdLine,$finout);
$secondfinout = "http://www.asdf.com/".$finout[1]; //take the second value in the newly created $finout array, which is asdf-package.html
希望能回答一切。 :)