1

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);
?>

コンソールを使用すると、次のような正しい応答が得られます。

ここに画像の説明を入力

しかし、PHPでは最初の単語しかありません:

ここに画像の説明を入力

どうしたの?

4

1 に答える 1

0

これは明らかなエンコーディングの問題です (ロシア語の文字が読めなくなります)。そのため、PHP コードでエンコーディングを設定 (つまり、デフォルトを変更) してみてください。たとえば、ヘッダーに Unicode の使用法を追加します。

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

解決しない場合は、代わりcharset=utf-8に試してください。charset=windows-1251

アップデート:

ファイルを保存することを忘れないでください (utf-8 の場合は UTF エンコーディングの PHP コード、windows-1251 の場合は ANSI)。

于 2016-07-16T17:40:15.060 に答える