pipe php function


pipe php function

我想在bash脚本中使用php的strip标记。我想我可以把我想使用的html文件放入cat中,并使用该输入,将其导入php,然后再将其导入其他文件(sed)。这可能吗?我不知道如何将file.html的输出通过管道传输到strip_tag函数中。。。也许把它都放在一个变量里?我希望以下内容只保留锚标记。。。在以下内容中,我为strip_tags字符串放入了伪文本,因为我不知道如何在中管道传输file.html

cat file.html | php strip_tags("<p><a href='#'>hi</a></p>",'<a>') > removed_tags.html

您可以使用流URI php://stdin在PHP中读取STDIN。至于执行它,您还需要引用PHP代码并使用-r选项,以及echo处理结果。所以这里是固定的脚本:

cat file.html | php -r "echo strip_tags(file_get_contents('php://stdin'), '<a>');" > removed_tags.html

在PHP中从stdin读取并在没有文件的情况下编写PHP脚本是可能的,但这比只编写这样的文件要麻烦得多

<?php echo strip_tags(file_get_contents($argv[1]), '<a>');

$ php that-file.php file.html > removed_tags.html