Зачем возвращать ключевое слово ничего не возвращает? PHP [дублировать]

Строка ошибки «Ссылка на объект, не установленная на экземпляр объекта.» указывает, что вы не назначили экземпляр объекта объектной ссылке, и все же вы получаете доступ к свойствам / методам этого объекта.

например: скажем, у вас есть класс под названием myClass и он содержит одно свойство prop1.

public Class myClass
{
   public int prop1 {get;set;}
}

Теперь вы получаете доступ к этому prop1 в каком-то другом классе, как показано ниже:

public class Demo
{
     public void testMethod()
     {
        myClass ref = null;
        ref.prop1 = 1;  //This line throws error
     }
}

выше строки выдает ошибку, потому что ссылка класса myClass объявлена, но не создана, или экземпляр объекта не назначается referecne этого класса.

Чтобы исправить это, вам нужно создать экземпляр (присвоить объект ссылке на этот класс).

public class Demo
{
     public void testMethod()
     {
        myClass ref = null;
        ref = new myClass();
        ref.prop1 = 1;  
     }
}
12
задан marky 11 April 2012 в 14:42
поделиться

4 ответа

Ну, вызов ajax считывает ответ с сервера и этот ответ должен отображаться как некоторый тип читаемых данных, таких как application/json или text/html.

Чтобы написать, что данных, вам нужно echo это с сервера с PHP.

Оператор return не записывает данные, он просто возвращается на уровне сервера.

21
ответ дан Daniel Ribeiro 24 August 2018 в 21:52
поделиться

Ajax вызывает данные так же, как и мы, читает их как строку. Это в основном доступ к другой веб-странице и «получение» результата. «Возврат» PHP возвращает значение только на сервере. Вам нужно фактически выводить данные, чтобы при вызове Ajax на странице, на которую он смотрит, действительно записаны данные.

5
ответ дан Josh Toth 24 August 2018 в 21:52
поделиться

Команда echo выводит данные на Standart Output, это в приложениях веб-браузера, клиент, который запросил данные. В CLI напечатайте данные на консоли. И return команда выдает функцию со значением, но ничего не печатает.

Если вы хотите общаться между функциями PHP, вы должны использовать return. Но если вы хотите вывести некоторые данные, вы должны использовать echo.

2
ответ дан MatuDuke 24 August 2018 в 21:52
поделиться

Вызов Ajax использует ответ HTTP-запроса. PHP-скрипт не генерирует результат, сохраняя его, но эхом.

8
ответ дан rael_kid 24 August 2018 в 21:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: