Это предупреждение может появляться с различными функциями, связанными с доступом к файлам и каталогам. Он предупреждает о проблеме с конфигурацией.
Когда он появляется, это означает, что доступ был запрещен для некоторых файлов.
Само предупреждение ничего не нарушает, но чаще всего скрипт не работает должным образом, если предотвращается доступ к файлу.
Исправление обычно изменяет конфигурацию PHP , связанная настройка называется open_basedir
.
Иногда неправильный имена файлов или каталогов, тогда исправление должно использовать правильные.
Вопросы, относящиеся
Существует два типа nullable - Nullable<T>
и ссылочный тип.
Jon исправил меня, что трудно получить тип, если упаковано, но Вы можете с дженериками: - таким образом как насчет ниже. Это на самом деле тестирует тип T
, но использует obj
параметр просто для универсального вывода типа (чтобы помочь звонить) - он работал бы почти тождественно без obj
параметрический усилитель, все же.
static bool IsNullable<T>(T obj)
{
if (obj == null) return true; // obvious
Type type = typeof(T);
if (!type.IsValueType) return true; // ref-type
if (Nullable.GetUnderlyingType(type) != null) return true; // Nullable<T>
return false; // value-type
}
, Но это не будет работать так хорошо, если Вы уже упаковали значение к переменной объекта.
документация Microsoft: https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/nullable-types/how-to-identify-a-nullable-type
Будьте осторожны при упаковке nullable типа (Nullable<int>
или интервал? например):
int? nullValue = null;
object boxedNullValue = (object)nullValue;
Debug.Assert(boxedNullValue == null);
int? value = 10;
object boxedValue = (object)value;
Debug.Assert( boxedValue.GetType() == typeof(int))
Это становится истинным ссылочным типом, таким образом, Вы теряете факт, это было nullable.
Ну, Вы могли использовать:
return !(o is ValueType);
..., но сам объект не nullable или иначе - , тип . Как Вы были планированием использования этого?