Maison développement back-end tutoriel php COMFunctionsinPHP4(Windows)_PHP

COMFunctionsinPHP4(Windows)_PHP

Jun 01, 2016 pm 12:35 PM
and com it of the with

Using the PHP4 COM functions with MS Excel
As for the Word example above, study the code with the help from the Visual Basic Editor ObjectBrowser for Excel.

#Set the workbook to use and its sheet. In this example we use a spreadsheet that
#comes with the Excel installation called: SOLVSAMP.XLS

$workbook = "C:\Program Files\Microsoft office\Office\Samples\SOLVSAMP.XLS";
$sheet = "Quick Tour";

#Instantiate the spreadsheet component.
$ex = new COM("Excel.sheet") or Die ("Did not connect");

#Get the application name and version
print "Application name:{$ex->Application->value}
" ;
print "Loaded version: {$ex->Application->version}
";

#Open the workbook that we want to use.
$wkb = $ex->application->Workbooks->Open($workbook) or Die ("Did not open");

#Create a copy of the workbook, so the original workbook will be preserved.
$ex->Application->ActiveWorkbook->SaveAs("Ourtest");
#$ex->Application->Visible = 1; #Uncomment to make Excel visible.

# Read and write to a cell in the new sheet
# We want to read the cell E11 (Advertising in the 4th. Quarter)
$sheets = $wkb->Worksheets($sheet); #Select the sheet
$sheets->activate; #Activate it
$cell = $sheets->Cells(11,5) ; #Select the cell (Row Column number)
$cell->activate; #Activate the cell
print "Old Value = {$cell->value}
"; #Print the value of the cell:10000
$cell->value = 15000; #Change it to 15000
print "New value = {$cell->value}
";#Print the new value=15000

#Eventually, recalculate the sheet with the new value.
$sheets->Calculate; #Necessary only if calc. option is manual
#And see the effect on total cost(Cell E13)
$cell = $sheets->Cells(13,5) ; #Select the cell (Row Column number)
$number = Number_format($cell->value);
print "New Total cost =\$$number - was \$47,732 before.
";
#Should print $57,809 because the advertising affects the Corporate overhead in the
# cell formula.

#Example of use of the built-in functions in Excel:
#Function: PMT(percent/12 months,Number of payments,Loan amount)
$pay = $ex->application->pmt(0.08/12,10,10000);
$pay = sprintf("%.2f",$pay);
print "Monthly payment for $10,000 loan @8% interest /10 months: \$ $pay
";
#Should print monthly payment = $ -1,037.03

#Optionally, save the modified workbook
$ex->Application->ActiveWorkbook->SaveAs("Ourtest");
#Close all workbooks without questioning
$ex->application->ActiveWorkbook->Close("False");
unset ($ex);

?>
This example should get you going with the Excel COM and PHP. Of course there are many more objects to use. Writing an OOP wrapper for the principal functions will make access to the excel objects even easier.
Using PHP COM with Adobe Distiller
This last example is for a non-MS program: If your program has produced a PostScript document, it may be interesting to transform it (Distill it) to a PDF document. Adobe has a program called Distiller with a windows version that can be instantiated, with the following code:

$pdf = new COM("pdfdistiller.pdfdistiller.1");

?>
Note that the OLE Identifier name is not obvious, especially when the distiller documentation (Adobe's Technical Note #5158) refers to it as "pdfdistiller."
The principal method to distill a document is:

$pdf->FileToPdf ($psfile, strOutputPDF '
', strJobOptions "");

?>
Where $psfile is the name of the PostScript file, strOutputPDF is the name for the output PDF file. StrJobOptions is the name of the parameters file for Distiller. The two last parameters of the method can be left blank to use the same name, the PS file for the PDF file and to use the default Job options file. For example:

$pdf->FileToPdf ($psfile, "", "");
#Where $psfile could be Myfile.ps and the result file: Myfile.pdf

?>
There are more methods and properties that can be used with Distiller. If you are interested, look at the Adobe'
s technical note.
Caveats/Possible problems
If there are some errors in your code, you may instantiate the object and your program may not close before it times out. Worst of all, the application may retentively be instantiated. As a result, several copies may lay around in your programs list and interfere after you have corrected the problem. The solution: After fixing the bug, clean up (CTRL+ALT+Delete> and End Task) all the instances in the program list before you restart. For this same reason, always close the application at the end of your code and unlink the instance.
You may experience some oddities with com_get and com_set. For example: $Version = Com_get($instance->Application,"Version"); Works with Word, but produces an error with Excel.
Some Objects won't be instantiated by PHP4, it appears that these objects need a custom interface that PHP4-COM doesn't support.
Why use it?
Hopefully, these three examples have shown you the ropes. PHP COM allows the connection to many Windows programs inside a PHP script. The code is simpler than ASP's and can be integrated with the rest of PHP's powerful database functions. Microsoft markets the COM technology everywhere and under different names and architectures, like COM+(Combine COM with Microsoft Transaction Server MTS), ADO, OLE DB, OWC, Windows DNA, etc. PHP and Apache, working together, are now offering an open source solution to this confusion.
http://phpclasses.upperdesign.com/browse.html?package=86
--Alain
PS: See the EXCEL class using the COM interface at:

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Poésie aléatoire d'application native Hongmeng Poésie aléatoire d'application native Hongmeng Feb 19, 2024 pm 01:36 PM

Pour en savoir plus sur l'open source, veuillez visiter : 51CTO Hongmeng Developer Community https://ost.51cto.com Environnement d'exploitation DAYU200 : 4.0.10.16SDK : 4.0.10.15IDE : 4.0.600 1. Pour créer une application, cliquez sur Fichier- >nouveauFichier->CréerProgect. Sélectionnez le modèle : [OpenHarmony] EmptyAbility : indiquez le nom du projet, shici, le nom du package d'application com.nut.shici et l'emplacement de stockage de l'application XXX (pas de chinois, de caractères spéciaux ou d'espaces). CompileSDK10, modèle : étape. Appareil

Après 2 mois, le robot humanoïde Walker S peut plier les vêtements Après 2 mois, le robot humanoïde Walker S peut plier les vêtements Apr 03, 2024 am 08:01 AM

Rédacteur en chef du Machine Power Report : Wu Xin La version domestique de l'équipe robot humanoïde + grand modèle a accompli pour la première fois la tâche d'exploitation de matériaux flexibles complexes tels que le pliage de vêtements. Avec le dévoilement de Figure01, qui intègre le grand modèle multimodal d'OpenAI, les progrès connexes des pairs nationaux ont attiré l'attention. Hier encore, UBTECH, le « stock numéro un de robots humanoïdes » en Chine, a publié la première démo du robot humanoïde WalkerS, profondément intégré au grand modèle de Baidu Wenxin, présentant de nouvelles fonctionnalités intéressantes. Maintenant, WalkerS, bénéficiant des capacités de grands modèles de Baidu Wenxin, ressemble à ceci. Comme la figure 01, WalkerS ne se déplace pas, mais se tient derrière un bureau pour accomplir une série de tâches. Il peut suivre les commandes humaines et plier les vêtements

Infrastructure d'IA : l'importance de la collaboration entre les équipes informatiques et scientifiques des données Infrastructure d'IA : l'importance de la collaboration entre les équipes informatiques et scientifiques des données May 18, 2023 pm 11:08 PM

L’intelligence artificielle (IA) a changé la donne dans de nombreux secteurs, permettant aux entreprises d’améliorer leur efficacité, leur prise de décision et leur expérience client. Alors que l’IA continue d’évoluer et de devenir plus complexe, il est essentiel que les entreprises investissent dans la bonne infrastructure pour soutenir son développement et son déploiement. Un aspect clé de cette infrastructure est la collaboration entre les équipes informatiques et de science des données, car toutes deux jouent un rôle essentiel pour garantir le succès des initiatives d'IA. Le développement rapide de l’intelligence artificielle a conduit à une demande croissante en matière de puissance de calcul, de stockage et de capacités réseau. Cette demande exerce une pression sur l’infrastructure informatique traditionnelle, qui n’a pas été conçue pour gérer les charges de travail complexes et gourmandes en ressources requises par l’IA. En conséquence, les entreprises cherchent désormais à créer des systèmes capables de prendre en charge les charges de travail d’IA.

Quelle est la différence entre comcn et com Quelle est la différence entre comcn et com May 12, 2023 pm 04:08 PM

La différence entre comcn et com : 1. Il existe des différences de signification entre comcn et com, mais il n'y a pas de différence de vitesse d'accès 2. comcn est un nom de domaine international et est un nom de domaine mondial de premier niveau utilisé par les institutions commerciales ; , alors que cn est un nom de domaine d'entreprise chinoise, les institutions commerciales nationales, les noms de domaine nationaux, seules les entreprises peuvent s'enregistrer ; 3. La priorité de recherche est que cn recherchera d'abord .cn. Après avoir trouvé le serveur .cn, le serveur .cn le fera. puis recherchez .com ; 4. cn est fourni par cnnic China Internet Center Management, l'organisation de gestion de com est à l'étranger.

Ayant travaillé dans l'exploitation et la maintenance pendant plus de dix ans, j'ai eu d'innombrables moments où j'avais l'impression d'être encore un novice... Ayant travaillé dans l'exploitation et la maintenance pendant plus de dix ans, j'ai eu d'innombrables moments où j'avais l'impression d'être encore un novice... Jun 09, 2023 pm 09:53 PM

Il était une fois, alors que j'étais fraîchement diplômé en informatique, que je parcourais de nombreuses offres d'emploi sur les sites de recrutement, j'étais déconcerté par les postes techniques fulgurants : ingénieur R&D, ingénieur d'exploitation et de maintenance, ingénieur de tests...‍ Au collège. , mes parcours professionnels étaient médiocres, sans parler d'une vision technique, et je n'avais aucune idée claire sur la direction technique à suivre. Jusqu'à ce qu'un étudiant senior me dise : « Faites de l'exploitation et de la maintenance. Vous n'avez pas besoin d'écrire du code tous les jours pour faire de l'exploitation et de la maintenance. Il vous suffit de pouvoir jouer à Liunx ! C'est beaucoup plus facile que de faire du développement ! à croire... Je suis dans l'industrie depuis plus de dix ans, j'ai beaucoup souffert, j'ai enduré beaucoup de reproches, j'ai tué des serveurs et j'ai connu des licenciements dans des services. Si quelqu'un me dit maintenant que l'exploitation et la maintenance sont plus faciles que le développement. , alors je le ferai

Démystifier le mot-clé with en Python Démystifier le mot-clé with en Python Apr 14, 2023 am 11:31 AM

Beaucoup d'entre nous ont vu cet extrait encore et encore dans le code Python : with open('Hi.text', 'w') as f: f.write("Bonjour, là") Cependant, certains d'entre nous Certaines personnes ne le font pas savoir à quoi sert with et pourquoi nous devons l'utiliser ici. Dans cette lecture, vous découvrirez presque tous les problèmes pouvant être résolus. Commençons ! Tout d’abord, considérons ce que nous devons faire sans utiliser le mot-clé with. Dans ce cas, nous devons d’abord ouvrir le fichier et essayer d’écrire. Peu importe le succès ou l'échec, nous ferions mieux d'être

Que dois-je faire si le système Win10 tombe en panne et affiche un manque de mémoire ? Que dois-je faire si le système Win10 tombe en panne et affiche un manque de mémoire ? Feb 09, 2024 pm 03:00 PM

Le système Win10 plante et affiche une mémoire insuffisante. Récemment, de nombreux utilisateurs ont rencontré cette invite lors de l'utilisation de leur ordinateur, ce qui nécessite des redémarrages fréquents pour réparer. Alors, comment devons-nous gérer cette situation ? Pour résoudre ce problème, le didacticiel Win10 de ce problème est ici. étapes de fonctionnement avec la majorité des utilisateurs, dans l'espoir d'aider plus d'amis à résoudre leurs problèmes. Que faire si le système Win10 tombe en panne et affiche un manque de mémoire 1. Cliquez avec le bouton droit sur cet ordinateur sur le bureau et sélectionnez « Propriétés » dans la liste des options. 2. Après être entré dans la nouvelle interface de la fenêtre, cliquez sur l'option « Paramètres système avancés » dans le coin supérieur gauche. 3. Dans la fenêtre qui s'ouvre, passez à l'icône "

qu'est-ce que c'est qu'est-ce que c'est Aug 02, 2023 pm 03:53 PM

L'informatique est une technologie de l'information, un terme général désignant diverses technologies principalement utilisées pour gérer et traiter l'information. L'informatique est un élément indispensable de la société d'aujourd'hui. En changeant notre façon de vivre et de travailler, l'informatique apporte de nombreuses commodités et opportunités, et elle est également énorme. potentiel à exploiter. Avec le développement continu de l’informatique, nous attendons avec impatience l’émergence d’un plus grand nombre de nouvelles applications et technologies, qui donneront vie à de plus grands changements.

See all articles