PHP が提供するPCRE Patternsのドキュメントを見てきました。ユーザーからのテキストを処理するためにサード パーティのプラグインを使用しています。(preg_replace(): コンパイルに失敗しました: 文字クラスの終了] がありません
$input = preg_replace('/[\]/i','',$userInput);
私が見ることができることから、終端の区切り文字は / であり、その中に \ のみを含む文字クラスがあります。i, if I can read correctly は、大文字または小文字を気にしないように式に指示します。開閉どちらも見えます。
エラーがスローされるのはなぜですか?preg_replace は何をしようとしていますか?