Skip to content

Commit

Permalink
Php greeter (#259)
Browse files Browse the repository at this point in the history
  • Loading branch information
bernardnormier authored Feb 5, 2025
1 parent b932dbf commit 03416b8
Show file tree
Hide file tree
Showing 5 changed files with 59 additions and 2 deletions.
1 change: 1 addition & 0 deletions php/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,6 @@ Chat/Chat.php
Chat/PollingChat.php
Glacier2/hello/Hello.php
Ice/hello/Hello.php
Ice/greeter/Greeter.php
Ice/optional/Contact.php
IceDiscovery/hello/Hello.php
21 changes: 21 additions & 0 deletions php/Ice/greeter/Client.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
<?php
// Copyright (c) ZeroC, Inc.

require_once 'Ice.php';
require_once 'Greeter.php';

// Create an Ice communicator to initialize the Ice runtime. This communicator is destroyed automatically at the end of
// the script.
$communicator = Ice\initialize();

// GreeterPrxHelper is a class generated by the Slice compiler. We create a Greeter proxy from a communicator and a
// "stringified proxy" with the address of the target object.
// If you run the server on a different computer, replace localhost in the string below with the server's hostname
// or IP address.
$greeter = VisitorCenter\GreeterPrxHelper::createProxy($communicator, 'greeter:tcp -h localhost -p 4061');

// Send a request to the remote object and get the response.
$greeting = $greeter->greet(get_current_user());

echo "$greeting\n";
?>
15 changes: 15 additions & 0 deletions php/Ice/greeter/Greeter.ice
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
// Copyright (c) ZeroC, Inc.

#pragma once

module VisitorCenter
{
/// Represents a simple greeter.
interface Greeter
{
/// Creates a personalized greeting.
/// @param name The name of the person to greet.
/// @return The greeting.
string greet(string name);
}
}
20 changes: 20 additions & 0 deletions php/Ice/greeter/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Greeter

The Greeter demo illustrates how to write a client application with Ice for PHP.

Ice for PHP supports only client-side applications. As a result, you first need to start a Greeter server implemented
in a language with server-side support, such as Python, Java, or C#.

Then, in a separate window:

- Compile Greeter.ice with the Slice to PHP compiler into Greeter.php

```shell
slice2php Greeter.ice
```

- Run the client application

```shell
php Client.php
```
4 changes: 2 additions & 2 deletions ruby/Ice/greeter/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,13 @@ in a language with server-side support, such as Python, Java, or C#.

Then, in a separate window:

- compile Greeter.ice with the Slice to Ruby compiler into Greeter.rb
- Compile Greeter.ice with the Slice to Ruby compiler into Greeter.rb

```shell
slice2rb Greeter.ice
```

- run the client application
- Run the client application

```shell
ruby client.rb
Expand Down

0 comments on commit 03416b8

Please sign in to comment.