Это происходит, когда вы обычно вызываете файл include
, require
или fopen
, и PHP не смог найти файл или не имел достаточного разрешения на загрузку файла.
Это может произойти по разным причинам:
Одна из распространенных ошибок заключается в том, чтобы не использовать абсолютный путь. Это можно легко решить, используя полный путь или магические константы , такие как __DIR__
или dirname(__FILE__)
:
include __DIR__ . '/inc/globals.inc.php';
или:
require dirname(__FILE__) . '/inc/globals.inc.php';
Обеспечение правильного пути используется одним шагом в устранении этих проблем, это также может быть связано с несуществующими файлами, правами файловой системы, предотвращающими доступ или открытыми ограничениями на основе самого PHP.
Лучший способ для быстрого решения этой проблемы необходимо выполнить контрольный список устранения неполадок ниже.
Вопросы, относящиеся:
Связанные ошибки:
Это ("Общественность, Общая"), только работало бы в VB.Net.
нет никакого способа определить Методы класса в VBA (или VB). Я предложил бы создать государственную функцию в модуле.
AFAIK, самое близкое, которое можно получить (и не случается так, что близко), должен использовать "анонимный" экземпляр, таким образом, что-то вроде этого:
With New NotReallyStaticClass
.PerformNotReallyStatic Method, OnSome, Values
End With
необходимо объявить p2, прежде чем можно будет использовать Набор следующим образом:
тусклый p2 как Человек
, После того как Вы делаете это, необходимо заменить оператор Set с помощью стандартного присвоения: p2 = Человек. Создайте ("Bob")
В Функции: удалите ключевое слово "Набора"... это могло также быть источником ошибки.
я лечу слепой, но логически кажется, что это должно работать. Я плохо знаком с использованием модулей Класса в VBA, но они не слишком отличаются от использования свойств VB.Net.
Немного поздно, но какого черта
В VB6 / VBA нет классовых или статических методов. Но вы можете явно указать имя модуля. У вас не может быть модуля и класса с тем же именем, но вы могли бы назвать его чем-то похожим.
Итак, у меня может быть класс с именем Employee и модуль с именем EmployeeUtil, и тогда я могу написать:
Dim emp As Employee
Dim code As String
Set emp = EmployeeUtil.Create( "Smith", "John", 21-Feb-1988)
code = "123XY"
If EmployeeUtil.IsCodeValid( code) Then
emp.Code = code
Else
emp.Code = EmployeeUtil.DefaultCode
EndIf
Да, значения жестко запрограммированы, и обработка кода, вероятно, должна выполняться установщиком свойств, но я не об этом пытаюсь сказать. EmployeeUtil, по сути, является заполнителем для членов, не являющихся экземплярами.
Вы заметите, что метод Create таким образом дает нам псевдо-подобный конструктор для класса Employee. Все, что делает эта функция, - это создает экземпляр Employee, назначает параметры через установщики свойств, а затем возвращает экземпляр.