Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
如何从字符串的开头删除<?php和标签,从末尾删除标签?<??>
<?php
<?
?>
我不能使用str_replace,因为这些标签可能会在字符串中的其他位置使用来启动和停止 PHP 部分 - 我只想从开头和结尾删除它们。
str_replace
此外,这些标签之前/之后的空格应该被忽略 - 所以如果字符串以 开头 <?php,该<?php部分仍然应该被删除。
最简单的方法是使用preg_replace:
preg_replace
$result = $preg_replace('/(\s*)<\?(php)?\s+(.+)\?>(\s*)$/','${1}${3}${4}', $input);
请注意,这只会分别在输入的开头和结尾去除标签和<?- (可选地以空格开头)。根据您的需要,您需要修改正则表达式。<?php?>