第一篇文章。一直在这里搜索以找出问题。
我正在使用表单以这种格式上传带有数组的.txt:
“VAR1”, “VAR2”, “VAR3”, “VAR4” ...等
这是我的代码:
<?php
$file = $_FILES['uploaded_file']['tmp_name'];
$file2 = nl2br(file_get_contents($file));
$file3 = str_replace('"' , '' , $file2);
$file4 = str_replace('ÿþ' , '' , $file3);
$line_break = explode("<br />" , $file4);
$topchange=105;
foreach ($line_break as $final1) {
$final2 = explode("," , $final1);
$regex = '#\((([^()]+|(?R))*)\)#';
preg_match($regex, $final1, $match);
if($final2[4] == "DF") {
$type == "DF";
} else { $type == "S"; }
echo "<div style='position:absolute;TOP:". $topchange .";LEFT:395;'>". $final2[1] ."</div>";
echo "<div style='position:absolute;TOP:". $topchange .";LEFT:446;'>". $final2[3] ."</div>";
echo "<div style='position:absolute;TOP:". $topchange .";LEFT:365;'>". $match[0] ."</div>";
echo "<div style='position:absolute;TOP:". $topchange .";LEFT:335;'>". $type ."</div>";
echo "<div style='position:absolute;TOP:". $topchange .";LEFT:520;'>". $final2[6] ."</div>";
$changeamt = 24.2;
$topchange = $topchange + $changeamt;
}
?>
很抱歉,如果我的格式很糟糕,但它适合我。我的问题在于简单的if语句。我已经回复了$ final2 [4],以确保它输出纯文本。据我所知,页面和页面源,它以各种小的文本字符串(TE,WE,BE,P,S和DF)形式出现。我基本上希望每个字符串都改为S,除非它是DF,在这种情况下它将保持不变。
一直在研究这个问题,但是无法理解。
答案 0 :(得分:3)
如果你必须分配并且没有比较,你的代码内容如下:
if($final2[4] == "DF") {
$type == "DF";
} else {
$type == "S";
}
你应该这样做:
$type = "S";
if($final2[4] == "DF") {
$type = "DF";
}