在linux中使用php创建一个txt文件

时间:2013-08-05 18:41:39

标签: php linux bash

我们在HTML页面中有很少的字段,这是使用php写入文件。

该文件包含数据,但是,运行一个bash脚本,该文件以.txt作为扩展名而不能正常工作。

当打开文件并手动重新保存时,bash脚本将正常运行!

我已尝试更改文件的权限,但bash脚本仍未使用此文件。非常感谢任何帮助。

PHP脚本:

$name = "test.txt";    
$handle = fopen($name, "w");    
fwrite($handle, "my message");    
fclose($handle);

Bash脚本:

INPUT="$1"

OLDIFS=$IFS
IFS=,

[ ! -f $INPUT ] && { echo "$INPUT file not found"; exit 99; }

while read message number ; do 

    echo $message # or whaterver you want to do with the $line variable

    #j=$[$(line)]

    echo $number

    echo "$message" | gnokii --sendsms $number --smsc $SMSC

done < $INPUT

IFS=$OLDIFS

3 个答案:

答案 0 :(得分:3)

您可能希望使用fclose($handle)而不是unlink()

修改确定然后,“因为...”

  1. fclose($handle)关闭句柄引用的文件:$handle
  2. unlink()将文件路径字符串作为参数,而不是资源。
  3. 如果按预期使用,unlink()实际上会删除该文件。

答案 1 :(得分:0)

提到的

unlink()将删除该文件。刚刚创建了一个像这样的简单脚本

<?php
$name = "/var/www/test.txt";    
$handle = fopen($name, "w");    
fwrite($handle, "test,9944");    
fclose($handle);
?>

此脚本适用于存储数据的f9。但是使用文件输入作为test.txt运行bash脚本什么都不做。但是再次使用相同的文件名打开和保存它就可以了。

答案 2 :(得分:0)

终于得到了答案,它是由php创建的文本文件中缺少的文件的结尾。无论如何,谢谢大家的贡献。