1

私はphpファイルを読み、そのファイルの内容(いくつかのコード行)を行ごとにphp配列に保存します

私のphpファイルの行配列

$old_line_arr = new array(
                           "define ( 'name', '' );"
                           "//define ( 'age', '' );"   
                           "   //define ( 'ID', '' );"
                           )

指定された行配列がコメントされていることを確認したい

isComment($old_line_arr[0]){
  echo $old_line_arr[0].'commented';
}

isComment 関数の書き方を教えてください。特定のphpがコメントされているかどうかを確認するためのphp関数のビルドはありますか。

4

2 に答える 2

4

クイックでダーティなため、さまざまな条件でさらにエラー処理コードが必要になる場合があります。

$string = "//define('ID', '');";

$tokens = token_get_all("<?php $string");

if ($tokens[1][0] == T_COMMENT) {
    // it's a comment
} else {
    // it's not
}
于 2013-07-03T11:33:28.223 に答える
2

functionこのようなものを作成できます

function isComment($str) {
    $str = trim($str);
    $first_two_chars = substr($str, 0, 2);
    $last_two_chars = substr($str, -2);
    return $first_two_chars == '//' || substr($str, 0, 1) == '#' || ($first_two_chars == '/*' && $last_two_chars == '*/');
}

例:echo isComment($old_line_arr[0]) ? 'comment' : 'not a comment';

于 2013-07-03T11:34:05.867 に答える