Вопрос

У меня запущены два проекта, оба написаны на PHP.Теперь я хочу объединить эти два проекта.Первый проект - это CMS, и на определенной странице я буду отображать содержимое другого проекта / приложения.Я не хочу, чтобы первый проект знал о переменных и функциях в другом проекте или получал к ним доступ, и наоборот.Поэтому я просто хочу, чтобы CMS, первый проект, получал содержимое выходных данных другого проекта.

Я не хочу делать еще один http–запрос с использованием get_file_contents или cURL из-за времени загрузки.Я нахожу passthru() и system() трудно заставить себя работать, но если это возможно, пожалуйста, научи меня, как это сделать.

Мне также нужно передать некоторые переменные из первого проекта в другой при выполнении, controller_id и model_id.

Заранее спасибо!

Редактировать: Iframes и загрузка через javascript не являются вариантом с учетом рекомендаций по доступности.

Это было полезно?

Решение

У вас есть несколько вариантов, от которых вы уже отказались:

  • интеграция на стороне сервера на уровне кода (включает и т.д. ...)
  • интеграция на стороне сервера с помощью curl

Поэтому вам, вероятно, следует полагаться на интеграцию на стороне клиента:

  • загружать контент через AJAX (лучший вариант для меня):смотрите, например, функцию загрузки Jquery.Вы можете передавать любые параметры и данные, и все должно работать
  • загружайте контент с помощью iframes

Другие советы

возможно, вы могли бы использовать iFrame и передавать некоторые данные через строку запроса...несмотря на то, что это еще один запрос при загрузке...

Какую версию PHP вы используете?Вы всегда можете перенести часть приложения, которая, по сути, будет считаться "дочерней", в отдельное пространство имен, эффективно отрезав его от всего остального приложения и наоборот.

Ознакомьтесь с вводом вручную на Определение Пространств имен чтобы посмотреть, для тебя ли это

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top