예제 #1
0
bool IniSetting::Get(const std::string& name, std::string &value) {
  DefaultMap::iterator iter = s_global_ini.find(name.data());
  if (iter != s_global_ini.end()) {
    value = iter->second;
    return true;
  }
  CallbackMap::iterator cb_iter = s_callbacks->find(name.data());
  if (cb_iter != s_callbacks->end()) {
    value = cb_iter->second.getCallback(cb_iter->second.p);
    return true;
  }
  return false;
}
예제 #2
0
bool IniSetting::Get(CStrRef name, String &value) {
  if (name == "error_reporting") {
    value = String((int64)g_context->getErrorReportingLevel());
    return true;
  }
  if (name == "memory_limit") {
    value = String((int64)g_context->getRequestMemoryMaxBytes());
    return true;
  }
  if (name == "max_execution_time" || name == "maximum_execution_time") {
    value = String((int64)g_context->getRequestTimeLimit());
    return true;
  }
  if (name == "hphp.build_id") {
    value = String(RuntimeOption::BuildId);
    return true;
  }
  if (name == "arg_separator.output") {
    value = g_context->getArgSeparatorOutput();
    return true;
  }
  if (name == "upload_max_filesize") {
    int uploadMaxFilesize = RuntimeOption::UploadMaxFileSize / (1 << 20);
    value = String(uploadMaxFilesize);
    return true;
  }
  if (name == "log_errors") {
    value = g_context->getLogErrors() ? "1" : "0";
    return true;
  }
  if (name == "error_log") {
    value = g_context->getErrorLog();
    return true;
  }

  DefaultMap::iterator iter = s_global_ini.find(name.data());
  if (iter != s_global_ini.end()) {
    value = iter->second;
    return true;
  }

  return false;
}
예제 #3
0
bool IniSetting::Get(CStrRef name, String &value) {
    if (name == s_error_reporting) {
        value = String((int64_t)g_context->getErrorReportingLevel());
        return true;
    }
    if (name == s_memory_limit) {
        int64_t v = g_context->getRequestMemoryMaxBytes();
        if (v == INT64_MAX) v = -1;
        value = String(v);
        return true;
    }
    if (name == s_max_execution_time || name == s_maximum_execution_time) {
        value = String((int64_t)g_context->getRequestTimeLimit());
        return true;
    }
    if (name == s_hphp_build_id) {
        value = String(RuntimeOption::BuildId);
        return true;
    }
    if (name == s_hphp_compiler_version) {
        value = String(getHphpCompilerVersion());
        return true;
    }
    if (name == s_hphp_compiler_id) {
        value = String(getHphpCompilerId());
        return true;
    }
    if (name == s_arg_separator_output) {
        value = g_context->getArgSeparatorOutput();
        return true;
    }
    if (name == s_upload_max_filesize) {
        int uploadMaxFilesize = VirtualHost::GetUploadMaxFileSize() / (1 << 20);
        value = String(uploadMaxFilesize) + "M";
        return true;
    }
    if (name == s_post_max_size) {
        int postMaxSize = VirtualHost::GetMaxPostSize();
        value = String(postMaxSize);
        return true;
    }
    if (name == s_log_errors) {
        value = g_context->getLogErrors() ? s_1 : s_0;
        return true;
    }
    if (name == s_error_log) {
        value = g_context->getErrorLog();
        return true;
    }
    if (name == s_notice_frequency) {
        value = String((int64_t)RuntimeOption::NoticeFrequency);
        return true;
    }
    if (name == s_warning_frequency) {
        value = String((int64_t)RuntimeOption::WarningFrequency);
        return true;
    }
    if (name == s_include_path) {
        value = g_context->getIncludePath();
        return true;
    }

    DefaultMap::iterator iter = s_global_ini.find(name.data());
    if (iter != s_global_ini.end()) {
        value = iter->second;
        return true;
    }

    return false;
}