人。请帮我找出问题所在。我的ftvgirlsbay.com网站上有一个脚本:
<?php
define('C', 16); // NUMBER OF ROWS
define('D', 6); // NUMBER OF CELLS
$file = @file_get_contents('http://ftvgirlsbay.com/design/tables/gals.txt');
if($file === FALSE) {
echo "<h2>Make file gals.txt with data!</h2>";
return FALSE;
}
$file = explode("\r\n", $file);
$thumbs = array();
while(list(,$el) = each($file)) {
$el = explode('|', $el);
if(isset($el[0]) && isset($el[1]))
$thumbs[] = array($el[0], $el[1]);
}
//print_r($thumbs);
$size = sizeof($thumbs);
if($size < C*D) {
echo "<h2>More data needed. You have $size, you need ".C*D."!</h2>";
return FALSE;
}
$range = range(0, $size - 1);
shuffle($range);
//print_r($range);
?>
<table align=center>
<?php
$num = 0;
for($i = 0; $i < C; $i++) {
echo '<tr align=center>'."\r\n";
for($k = 0; $k < D; $k++) {
echo '<td><a href="'.$thumbs[$range[$num]][1].'">FTV '.$thumbs[$range[$num]][0].' Gallery</a> </td>'."\r\n";
$num++;
}
echo '</tr>'."\r\n";
}
?>
</table>
此脚本的结果: &#34;需要更多数据。你有1,你需要96!&#34; (http://ftvgirlsbay.com/random_scripts/test.php)
如果这部分
$file = @file_get_contents('http://ftvgirlsbay.com/design/tables/gals.txt');
更改为
$file = @file_get_contents('http://sexsticker.info/ftvgirlsbay.com/pictable/gals.txt');
它运作得很好
(http://ftvgirlsbay.com/random_scripts/test2.php)
因此,如果我链接到我服务器上的.txt文件,则脚本只读取1行。 如果我链接到远程服务器上的.txt - 脚本可以使用所有行
答案 0 :(得分:1)
我发现了你的问题,并且能够复制这个问题。
问题在于
中的\r
$file = explode("\r\n", $file);
删除\r
$file = explode("\n", $file);
两台服务器可能不同。一个可能在Linux上,而另一个在Windows服务器上。