在Windows 10 php 7.0.29上工作
如果我运行此代码段以编写新的文本文件
$myfile = fopen("/tmp/newfile.txt", "w") or die("Unable to open file!");
$txt = "John Doe".PHP_EOL;
fwrite($myfile, $txt);
$txt = "Jane Doe".PHP_EOL;
fwrite($myfile, $txt);
fclose($myfile);
die(__FILE__);
每件事都可以
John Doe
但是如果我再次在附加模式下对新文件运行
$myfile = fopen("/tmp/newfile.txt", "a") or die("Unable to open file!");
$txt = "John Doe".PHP_EOL;
fwrite($myfile, $txt);
$txt = "Jane Doe".PHP_EOL;
fwrite($myfile, $txt);
fclose($myfile);
die(__FILE__);
约翰·杜 简·多伊 约翰·杜 简·多伊 约翰·杜(John Doe)
我对所有我可以成像但不能附加到文件的测试进行识别
有什么建议吗? 谢谢
如果我从shell运行相同的代码片段就可以了
答案 0 :(得分:0)
我通常建议使用file_get_contents和file_put_contents,因为您将数据作为字符串提取并替换了全部内容。
这样,您可以使用内容字符串进行调试,并且所有“旧”数据都将被相同的+新数据覆盖。
void MatToTexture(Mat sourceMat)
{
//Get the height and width of the Mat
int imgHeight = sourceMat.Height;
int imgWidth = sourceMat.Width;
byte[] matData = new byte[imgHeight * imgWidth];
//Get the byte array and store in matData
sourceMat.GetArray(0, 0, matData);
//Create the Color array that will hold the pixels
Color32[] c = new Color32[imgHeight * imgWidth];
//Get the pixel data from parallel loop
Parallel.For(0, imgHeight, i => {
for (var j = 0; j < imgWidth; j++) {
byte vec = matData[j + i * imgWidth];
var color32 = new Color32 {
r = vec,
g = vec,
b = vec,
a = 0
};
c[j + i * imgWidth] = color32;
}
});
//Create Texture from the result
Texture2D tex = new Texture2D(imgWidth, imgHeight, TextureFormat.RGBA32, true, true);
tex.SetPixels32(c);
tex.Apply();
}
答案 1 :(得分:0)
谢谢大家的支持 这是一个htaccess问题,index.php被调用了2次,因此日志中的行重复了
@Andreas现在正在使用“追加”,因此与重写整个文件相比,所需的工作更少。 无论如何,谢谢您的建议将对其他情况有用