1. Web Servis Entegrasyonları
SOAP ve RESTful Web Servisleri
SOAP Web Servisi Örneği:
// SOAP Web Servisi ile iletişim kurma
$wsdl = "http://example.com/soap-service?wsdl";
$client = new SoapClient($wsdl);
// SOAP servisi tarafından sunulan bir metodunu çağırma
$response = $client->getUserInfo(['userID' => 123]);
// Yanıtı işleme
echo $response->username;
RESTful Web Servisi Örneği:
// RESTful Web Servisi ile iletişim kurma
$url = "http://example.com/rest-service/users/123";
$response = file_get_contents($url);
// JSON veriyi işleme
$userData = json_decode($response, true);
echo $userData['username'];
2. Veritabanı Entegrasyonları
MySQL Veritabanı Bağlantısı:
// MySQL veritabanına bağlanma
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";
$conn = new mysqli($servername, $username, $password, $dbname);
// Sorgu yapma
$sql = "SELECT * FROM users";
$result = $conn->query($sql);
// Sonuçları işleme
while($row = $result->fetch_assoc()) {
echo $row['username'] . "<br>";
}
// Bağlantıyı kapatma
$conn->close();
MongoDB NoSQL Veritabanı Entegrasyonu:
// MongoDB veritabanına bağlanma
$manager = new MongoDB\Driver\Manager("mongodb://localhost:27017");
// Veri ekleme
$bulk = new MongoDB\Driver\BulkWrite;
$document = ['_id' => new MongoDB\BSON\ObjectID, 'username' => 'john_doe'];
$bulk->insert($document);
$manager->executeBulkWrite('test.users', $bulk);
// Veri sorgulama
$filter = ['username' => 'john_doe'];
$options = [];
$query = new MongoDB\Driver\Query($filter, $options);
$cursor = $manager->executeQuery('test.users', $query);
// Sonuçları işleme
foreach ($cursor as $document) {
echo $document->username . "<br>";
}
3. API Entegrasyonları
OAuth ve API Kimlik Doğrulama
OAuth 2.0 ile Kimlik Doğrulama Örneği:
// Örnek OAuth 2.0 kimlik doğrulama akışı
// OAuth 2.0 istemcisini başlatma
$clientId = "your_client_id";
$clientSecret = "your_client_secret";
$redirectUri = "your_redirect_uri";
$authorizationEndpoint = "https://api.example.com/oauth/authorize";
$tokenEndpoint = "https://api.example.com/oauth/token";
$oauthClient = new OAuth2\Client($clientId, $clientSecret, $authorizationEndpoint, $tokenEndpoint);
// Kullanıcıyı yetkilendirme bağlantısı oluşturma
$authUrl = $oauthClient->getAuthenticationUrl($redirectUri);
// Kullanıcıyı yetkilendirme sayfasına yönlendirme
header('Location: ' . $authUrl);
exit;
Access Token ile API Kullanımı:
// OAuth 2.0 ile alınan access token kullanarak API'ya erişim
// Access token'ı almak için gerekli bilgiler
$accessToken = "your_access_token";
$apiUrl = "https://api.example.com/data";
// API'ya GET isteği gönderme
$ch = curl_init($apiUrl);
curl_setopt($ch, CURLOPT_HTTPHEADER, ["Authorization: Bearer $accessToken"]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
// API'dan gelen veriyi işleme
$data = json_decode($response, true);
print_r($data);
Dış Servis Entegrasyonları (Örneğin, Twitter API)
Twitter API ile Tweet Gönderme Örneği:
// Twitter API ile tweet gönderme
// Twitter API anahtarları
$apiKey = "your_api_key";
$apiSecretKey = "your_api_secret_key";
$accessToken = "your_access_token";
$accessTokenSecret = "your_access_token_secret";
// TwitterOAuth kütüphanesini yükleme
require "twitteroauth/autoload.php";
use Abraham\TwitterOAuth\TwitterOAuth;
// TwitterOAuth nesnesini oluşturma
$twitteroauth = new TwitterOAuth($apiKey, $apiSecretKey, $accessToken, $accessTokenSecret);
// Tweet gönderme
$tweet = $twitteroauth->post(
'statuses/update',
['status' => 'Bu bir test tweetidir. #TwitterAPI']
);
// Tweet gönderildi mi kontrol etme
if ($twitteroauth->getLastHttpCode() == 200) {
echo 'Tweet başarıyla gönderildi.';
} else {
echo 'Tweet gönderme hatası: ' . $twitteroauth->getLastHttpCode();
}