Nasıl Python içinde bir PHP komut dosyası dahil edebilirim?

4 Cevap php

Ben bunu eklediğinizde, haber bir demet kapmak ve onları yazdıran, bir PHP script (news-generator.php) var. Şu anda, benim web sitesi (CGI) için Python kullanıyorum. Ben PHP kullanarak zaman, ben "Haberler" sayfasında böyle bir şey kullandı:

<?php
print("<h1>News and Updates</h1>");
include("news-generator.php");
print("</body>");
?>

(Ben basitlik için örnek kısmak.)

Python komut (news-generator.php) yürütmek ve çapraz platform işe geri çıkışı yapabilir bir yolu var mı? Bu şekilde, ben bunu:

page_html = "<h1>News and Updates</h1>"
news_script_output = php("news-generator.php") //should return a string
print page_html + news_script_output

4 Cevap

PHP bir programdır. Sen subprocess ile herhangi bir programı çalıştırabilirsiniz.

Zor kısmı PHP beklediği bütün CGI ortamı taklit edilir.

Ben iyi cevabı apache ayrı ayrı hem de sayfaları işlemek ve sonra bir div içine sayfasını yüklemek için javascript kullanmak zorunda olacağını düşünüyorum. Sen ajax yükün hafif bir yavaşlama var ama o yok bu konuda endişelenmenize gerek.

1 sayfada birden çok dilde çalışacak ama onun dediği hatırlayamıyorum bir açık kaynak Widget şey var.

Sen sunucusu (localhost), sayfayı almak ve php için doğru ortamda çalıştırmak için urllib kullanabilirsiniz. Hoş değil, ama o iş olacak. Bunu çok yapmak eğer performans sorunlarına neden olabilir.

Eğer php komut dosyası (haber öğelerinin örn. dizisi) tarafından oluşturulan değişkenler ve böyle erişebileceğiniz bir şekilde bunu yapmak istiyorsanız, belki konu dışı ama, senin en iyi, php script exec yapmak olacak ama sonra json python tarafında onları çözmek, bir dize olarak php öğe bir json kodlanmış bir dizi dönmek ve orada html nesil ve yineleme yapmak.