如何正确使用PHP函数“fgets”?

发布于 2024-10-15 05:16:55 字数 811 浏览 2 评论 0原文

我认为我使用的 fgets() 是错误的。我试图打开一个 PHP 文件,然后尝试将该文件中的一行与我创建的变量。如果该行确实匹配,那么我想将 PHP 代码写入/插入到该行正下方的文件中。示例:

function remove_admin(){
    $findThis = '<tbody id="users" class="list:user user-list">';
    $handle = @fopen("../../fns-control/users.php", "r"); // Open file form read.

    if ($handle) {
        while (!feof($handle)) // Loop til end of file.
        {
            $buffer = fgets($handle, 479); // Read a line.
            if ($buffer == '<tbody id="users" class="list:user user-list">') // Check for string.
            {

现在我想将 PHP 代码写入文件,从第 480 行开始。我该怎么做?

有用的信息可能是:IIS 6 和 PHP 5.2。

I assume I'm using the fgets() wrong. I'm tring to open a PHP file and then try to match a line in that file with a variable I create. If the line does match then I want to write/insert PHP code to the file right below that line. Example:

function remove_admin(){
    $findThis = '<tbody id="users" class="list:user user-list">';
    $handle = @fopen("../../fns-control/users.php", "r"); // Open file form read.

    if ($handle) {
        while (!feof($handle)) // Loop til end of file.
        {
            $buffer = fgets($handle, 479); // Read a line.
            if ($buffer == '<tbody id="users" class="list:user user-list">') // Check for string.
            {

Now I want to write PHP code to the file, starting on line 480. How can I do that?

Useful information may be: IIS 6 and PHP 5.2.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

晌融 2024-10-22 05:16:55

试试这个:

<?php
function remove_admin(){
     $path = "../../fns-control/users.php";
     $findThis = '<tbody id="users" class="list:user user-list">';
     $phpCode = '<?php echo \'hello world\'; ?>';

     #Import file to string
     $f = file_get_contents($path);

     #Add in the PHP code
     $newfile = str_replace($findThis, $findThis . $phpCode, $f);

     #Overwrite the existing file
     $x = fopen($path, 'w');
     fwrite($x, $newfile);
     fclose($x);
 }

Try this:

<?php
function remove_admin(){
     $path = "../../fns-control/users.php";
     $findThis = '<tbody id="users" class="list:user user-list">';
     $phpCode = '<?php echo \'hello world\'; ?>';

     #Import file to string
     $f = file_get_contents($path);

     #Add in the PHP code
     $newfile = str_replace($findThis, $findThis . $phpCode, $f);

     #Overwrite the existing file
     $x = fopen($path, 'w');
     fwrite($x, $newfile);
     fclose($x);
 }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文