ホームページ >バックエンド開発 >PHPチュートリアル >不正行為のルールを教えてください
config.php$_LANG['new_arrival'] = 'New Arrivals';$_LANG['hot_products'] = 'Hot Products';$_LANG['group_deals'] = 'Group Deals';$_LANG['specials'] = "Specials";$_LANG['after'] = '<div>Contact cu\'stomer</div> <table><tr><td>service for</td></tr> <tr><td>order status and</td></tr> <tr><td>other after-sales issues</td></tr></table>'; $_LANG['group_deals'] = 'Group Deals'; $subject = file_get_contents("config.php");$pattern = '这里正则要如何写呢'; preg_match_all($pattern, $subject, $matches); print_r($matches);我要取出等号后面的所有内容,正则要怎样写呢? 请注意等号后面字符串中的符号(单引号,双引号,转义符己及换行都要取到)。结果如下:1. 'New Arrivals' 2. 'Hot Products' 3. 'Group Deals'4. "Specials"5. '<div>Contact cu\'stomer</div> <table><tr><td>service for</td></tr> <tr><td>order status and</td></tr> <tr><td>other after-sales issues</td></tr></table>'
理解できないのですが、キー名で直接アクセスできるのに、なぜ正規表現を使用するのでしょうか?そして、なぜ config.php のデータを取得するために file_get_contents を使用する必要があるのでしょうか?その配列を返し、その配列を介して直接操作することができ、より便利です
$subject =<<< 'TXT'$_LANG['new_arrival'] = 'New Arrivals';$_LANG['hot_products'] = 'Hot Products';$_LANG['group_deals'] = 'Group Deals';$_LANG['specials'] = "Specials";$_LANG['after'] = '<div>Contact cu\'stomer</div> <table><tr><td>service for</td></tr> <tr><td>order status and</td></tr> <tr><td>other after-sales issues</td></tr></table>'; $_LANG['group_deals'] = 'Group Deals';TXT;$pattern = '/.*=\s*(.+);/sU'; preg_match_all($pattern, $subject, $matches); print_r($matches[1]);Array
config.php 通常、配列値をインクルードして読み取るだけです
=s([''""A-Za-z1-9sa8093152e673feb7aba1828c43532094/\-]*)
config.php 通常、値を取得するには読み取り配列を含めるだけです
うーん。配列は直接使用できます。しかし、それは私の問題ではありません。