2016-07-16 10 views
1

から完全な応答を取得することができない私は、Pythonスクリプトからデータを取得しようとしている:PHPのパススルー:Pythonスクリプト

import pymorphy2 
import json 
import sys 

morph = pymorphy2.MorphAnalyzer() 
butyavka = morph.parse(sys.argv[1])[0] 
for item in butyavka.lexeme: 
    print(item.word) 

PHPコード:

<?php 
chdir('C:\\Users\Michael-PC\AppData\Local\Programs\Python\Python35-32'); 
$out; 
passthru('python WordAnalizator.py "слово"', $out); 
echo($out); 
?> 

私はコンソールを使用している場合は、それが正しい作ります応答、のように:

enter image description here

しかし、PHPで、私は最初の単語だけを持っている:

enter image description here

何が間違っていますか?

答えて

0

これは明らかなエンコーディングの問題です(ロシア語の文字は読めなくなります)。したがって、PHPコードでのエンコード(例えばデフォルトの変更)を試みてください。 charset=utf-8が解決しない場合は

header('Content-Type: text/html; charset=utf-8'); 

、代わりにcharset=windows-1251を試してみてください:ユニコードの使用をヘッダーに追加します。

UPDATE:

(窓-1251にUTF-8、またはANSI用のUTFエンコーディングでのPHPコード)ファイルを保存することを忘れないでください

関連する問題