当解析一个充满变量的文本文件(每行一个,后面没有空格)时,处理后,它会被写入带有附加行的$ myfile。
请查看我的代码:
$txt_file = file_get_contents('spins/' . $skustart . '/' . $skustart . '.txt');
$rows = explode("\n", $txt_file);
array_shift($rows);
$row_data = $data;
foreach($rows as $row => $data)
{
//parent
$txt = $skustart. "-" . $a.$skip1.$slogan . " " . $data . $sloganb . ' Tee Shirt, Men\'s ' . $skip3 . $brand . $desc . $value . $tee . $item_type . $skip20 . $skip9 . $bullet_point1 . $bullet_point2 . $value . $bullet_point212 . $bullet_point3 . $bullet_point4 . $bullet_point5 . $value . $gen_k1 . $value . $gen_k2 . $value . $gen_k3 . $value . $gen_k4 . $value . $gen_k5 . $main_image_url1 . $img_folder_name . "/" . $skustart. "-" . $a . '-black' . $main_image_url1_format . $other_image_url1 . $skip10 . $parent . " ; ;" . $variation_theme . $skip18 . $department_name . " ; ;" . $skip2 .$skip2 . $skip18 . "\n"; //this is the parent
fwrite($myfile, $txt);
//end parent
这是吐出来的:
注意:10K Run是有问题的变量($ data)
xxx-110K Run
blk-Sm;XXXXXXXBlack;black;; ;mens;; ;; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;Small;Small;
它应该在哪里:
xxx-110K Run blk-Sm;XXXXXXXBlack;black;; ;mens;; ;; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;Small;Small;
我不确定导致这种情况的原因,代码似乎工作正常,直到我将其实现到此生成器中。
请提供建议或提供任何建议,非常感谢!
答案 0 :(得分:1)
示例代码尚未完成,因此我仅针对您的主要问题提出建议 - 为什么有2个字符串。
这可能是因为你在输入中有这样的字符串: xxx-110K运行 \ n blk-Sm; XXXXXXXBlack; black ;; ;男装;;... 但是您的文本编辑器不会将其显示为单独的字符串。使用\ n \ r或\ r \ n或\ n
的不同组合会发生这种情况您可以先删除所有“\ r \ n”,以检查是否属于这种情况。
修剪$ rows中的所有值有时也会有所帮助。
答案 1 :(得分:0)
解决。
已更改
$rows = explode("\n", $txt_file);
要
$rows = explode("\r\n", $txt_file);
感谢您的帮助!