ID: 31327
Updated by: [EMAIL PROTECTED]
Reported By: vtsuper1 at mail dot hongkong dot com
-Status: Assigned
+Status: Feedback
Bug Type: COM related
Operating System: windowXP
PHP Version: 5.1
Assigned To: wez
New Comment:
Make sure you're setting up the code page properly.
>From the manual:
com.code_page
It controls the default character set code-page to use when passing
strings to and from COM objects. If set to an empty string, PHP will
assume that you want CP_ACP, which is the default system ANSI code
page.
If the text in your scripts is encoded using a different
encoding/character set by default, setting this directive will save you
from having to pass the code page as a parameter to the COM class
constructor. Please note that by using this directive (as with any PHP
configuration directive), your PHP script becomes less portable; you
should use the COM constructor parameter whenever possible.
Consult MSDN for more information on code pages.
Previous Comments:
------------------------------------------------------------------------
[2005-08-08 11:21:52] bmcrowley at lcwarriormail dot com
I am experiencing the same bug with Arabic - I pull a UTF-8 character
from a database, and push it into Word with UTF-8 for the characterset.
I get meaningless characters (the box) appearing after (to the right of)
the arabic text. Also, the arabic text gets mangled - words out of
order...
I would try to post the input/output here, but it would be
meaningless...
------------------------------------------------------------------------
[2005-08-03 07:51:25] [EMAIL PROTECTED]
Assigned to the maintainer of COM extension.
------------------------------------------------------------------------
[2005-08-03 05:17:34] vtsuper1 at mail dot hongkong dot com
Dear sir,
Thanks for your help. I have test it in a php 5.1.X version. But the
bug doesn't fixed. The meaningless space change to a square characters
only...
Anyway, thanks for your help. (This problem hasn't exist in Excel, it
only happened in Word only)
>From Victor
------------------------------------------------------------------------
[2005-08-02 23:49:10] [EMAIL PROTECTED]
Please try using this CVS snapshot:
http://snaps.php.net/php5-latest.tar.gz
For Windows:
http://snaps.php.net/win32/php5-win32-latest.zip
------------------------------------------------------------------------
[2004-12-28 20:46:49] vtsuper1 at mail dot hongkong dot com
Description:
------------
I have try this code in
php 5.0.3 and 4.3
I'm using Chinese winXP and Chinese Office XP
apache 2
both version of php also have the same problem
When I use Chinese character in the string, the output of the word file
will have some meaningless spaces after the words I expected(my expected
string is ok, no problem). There are no problem if I using English. And
this problem will not occurs in excel.
Reproduce code:
---------------
<?php
// starting word
$word = new COM("word.application") or die("Unable to instantiate
Word");
echo "Loaded Word, version {$word->Version}\n";
//bring it to front
$word->Visible = 1;
//open an empty document
$word->Documents->Add();
//do some weird stuff
$word->Selection->TypeText("§A¦n¶Ü");
$word->Documents[1]->SaveAs("Useless test.doc");
//closing word
$word->Quit();
//free the object
$word = null;
?>
Expected result:
----------------
§A¦n¶Ü
Actual result:
--------------
§A¦n¶Ü____
(there are some spaces occurs, I use the underline to repersent the
spaces)
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=31327&edit=1