数日前に PHP の学習を開始し、AJAX を使用して SQL データベース管理 Web ページの作成を開始しました。検索をすべての [*] 列より少なく制限すると、エラーが発生します。
このため、AJAX を介して送信された文字列に対して正規表現を使用し、必要なテーブルを Web ページに動的に書き戻すのは比較的簡単だと思いました。
preg_split() から返された配列に基づいてループを実行し、新しい文字列に追加してから、SQL テーブルを書き込むことができる新しいテーブルとして新しい文字列をエコーアウトする方法を理解するのに問題があります。
これは私が理解できないビットです
$newString = 'this and ';
for ($i=0; $i < $arrayLength; $i++) {
$newString += $repArray[$i];
}
echo $newString;
コード内の正規表現は、'SELECT' ステートメントと 'FROM' ステートメントの間のテキストを取得し、空白を削除して、単語を配列に分割するだけです。何が起こっているかを示すさまざまなエコーがあります。
助けてくれてありがとう
よろしく、
アンドリュー
ここにアイデアをテストするための私の完全なphpコードがあります
<?php
$string = 'SELECT ID, username, password, firstName, IP FROM users WHERE ID > 100';
$pattern = '/SELECT (.*) FROM (.*)/i';
$replacement = '$1';
$replaced = preg_replace($pattern, $replacement, $string);
echo '<br> ' . $replaced;
$replaced2 = preg_replace('/\s/' , '', $replaced);
echo '<br> ' . $replaced2;
$repArray = preg_split('/,/', $replaced2, -1, PREG_SPLIT_NO_EMPTY);
echo '<br> ';
print_r($repArray);
$arrayLength = count($repArray);
echo '<br> Array length = ' . $arrayLength;
$newString = 'this and ';
for ($i=0; $i < $arrayLength; $i++) {
$newString += $repArray[$i];
}
echo $newString;
?>