无法将回显输出写入文本文件

时间:2019-09-09 03:17:14

标签: php echo whitespace fwrite

我想两次生成随机数,说用户名和密码,然后将其保存在文本文件中。我的脚本成功生成了数字,但是我无法在两个变量之间放置单个空格,也无法在文本文档中写入文件。请在我的PHP脚本下面找到:

import pandas as pd
import plotly.graph_objects as go
import ipywidgets as widgets
from IPython.display import display
from ipywidgets import interact, interactive

def demo_table(row):
    fig = go.Figure(data=[
        go.Table(
            header=dict(values=['Column1', 'Column2', 'Column3'],
                line = dict(color='#7D7F80'),
                fill = dict(color='#a1c3d1'),
                align = ['left'] * 5),
            cells=dict(values=[[1, 2],[3, 4],[5, 6]],
                line = dict(color='#7D7F80'),
                fill = dict(color='#EDFAFF'),
                align = ['left'] * 5)
        )
    ])
    fig.show()

play = widgets.Play(
    interval=1000,
    value=0,
    min=0,
    max=100,
    step=1,
    description="Press play",
    disabled=False
)

slider = widgets.IntSlider()
widgets.jslink((play, 'value'), (slider, 'value'))
display(widgets.HBox([play]))

interactive_plot=interactive(demo_table, row=slider)
output = interactive_plot.children[-1]
output.layout.height = '350px'
interactive_plot

当我在浏览器中打开此文件时,会得到如下随机数:
/** ////generatePassword **/ function generatePassword ($length = 7) { // start with a blank password $genpassword = ""; // define possible characters $possible = "0123456789"; // set up a counter $i = 0; // add random characters to $password until $length is reached while ($i < $length) { // pick a random character from the possible ones $char = substr($possible, mt_rand(0, strlen($possible)-1), 1); // we don't want this character if it's already in the password if (!strstr($genpassword, $char)) { $genpassword .= $char; $i++; } } // done! return $genpassword;} echo generatePassword().generatePassword(); $cfgclines=''; addFlinetoConfig($cfgclines); writetoLog("cfgclines"); function addFlinetoConfig($cfgclines) {$handle = fopen("/var/etc/user.cfg",'a'); fwrite($handle, $genpassword); fclose($handle); } ?>
第7个字符后应该有一个空格,如下所示:
83215063912640 此外,我无法调用echo函数将其写在名为user.cfg的文本文件中

1 个答案:

答案 0 :(得分:0)

在调用echo generatePassword().generatePassword()的地方,您需要手动添加一个空格:

echo generatePassword() . " " . generatePassword();

至于您无法写入文件,代码是正确的,因此可能存在权限问题。确保授予脚本写访问权限(chmod()的中间字符):

chmod("/var/etc/user.cfg", 0755);
相关问题