これが私の機能です:
function grabstuff()
{
foreach (glob("../folder/*.php") as $fn)
{
$file = file_get_contents($fn);
preg_match_all("#\{\('(\w+)'\)}#", $file, $matches);
foreach ($matches[1] as $match)
{
$query = ("ALTER TABLE xxxxx ADD COLUMN `$match` LONGTEXT AFTER xxxxx;");
$result = mysql_query($query) or die("Err: ".mysql_error());
}
}
}
そして、これがページで探すものです:
<?/*{('test test')}*/?>
空白があるこのインスタンスを無視しています。これは、testtest と test_test でうまく機能します。PHPエラーまたはmysqlエラーが発生しません。またはを使用する必要があります\w+\S
か\w+\W
? 私はそれらの両方を試しましたが、(...) それでも機能しませんでした。上記の関数を取得して、{('')} 内の任意の文字 (通常の abc 文字または空白文字) を認識するにはどうすればよいですか。これは簡単だと思います。私はグーグルとここで調査を行いましたが、解決策を見つけることができませんでした。(それが役立つ場合、任意のページに {('')} の複数のインスタンスがあります)。この関数をしばらく使用していますが、空白を含める機能を追加したいと考えています。ありがとう!