Junior
PHP-də hansı şəbəkə funksiyaları mövcuddur?
sobes.tech Süni İntellekt
AI-dan cavab
PHP-də şəbəkə ilə işləmək üçün çox sayda şəbəkə funksiyaları mövcuddur. Ən çox istifadə olunanlar bunlardır:
- "Soketlər" bölməsi (
Sockets):socket_create(): Soket yaradır.socket_connect(): Uzaq host ilə əlaqə qurur.socket_bind(): Soketi ünvan və porta bağlayır.socket_listen(): Gələn əlaqələri dinləyir.socket_accept(): Gələn əlaqəni qəbul edir.socket_read(): Soketdən məlumat oxuyur.socket_write(): Soketə məlumat yazır.socket_close(): Soketi bağlayır.socket_last_error(): Sonuncu səhv kodunu qaytarır.socket_strerror(): Səhv haqqında mətn təsviri verir.
<?php
// Soket yaratmaq və əlaqə qurmaq nümunəsi
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if ($socket === false) {
echo "socket_create() alınmadı: səbəb: " . socket_strerror(socket_last_error()) . "\n";
} else {
echo "Soket yaradıldı.\n";
}
$result = socket_connect($socket, 'example.com', 80);
if ($result === false) {
echo "socket_connect() alınmadı: səbəb: ($result) " . socket_strerror(socket_last_error($socket)) . "\n";
} else {
echo "Əlaqə quruldu.\n";
}
socket_close($socket); // Soketi bağlama
?>
- "URL" bölməsi:
file_get_contents(): Faylın məzmununu sətir kimi oxuyur (HTTP üçün istifadə oluna bilər).file_put_contents(): Məlumatı fayla yazır (HTTP POST üçün istifadə oluna bilər).get_headers(): HTTP cavab başlıqlarını qaytarır.parse_url(): URL-i komponentlərə ayırır.http_build_query(): Sorğu sətirini yaradır.
- "DNS" bölməsi:
gethostbyname(): Hostun IPv4 ünvanını qaytarır.gethostbyaddr(): IP ünvanı üçün host adını qaytarır.getmxrr(): Domain üçün poçt mübadiləsi qeydlərini (MX) alır.
- "cURL" bölməsi (cURL genişlənməsi tələb olunur): HTTP sorğuları üçün çoxfunksiyalı müştəri mexanizmi təqdim edir. Cookies, proxy, autentifikasiya və s. ilə işləmək üçün funksiyalar daxildir.
curl_init(): cURL sessiyasını başlatır.curl_setopt(): cURL sessiyası üçün seçimləri təyin edir.curl_exec(): cURL sessiyasını icra edir.curl_close(): cURL sessiyasını bağlayır.
<?php
// cURL istifadə edərək səhifənin məzmununu alma nümunəsi
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://example.com/");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // Nəticəni sətir kimi qaytar
$output = curl_exec($ch);
if ($output === false) {
echo "cURL xətası: " . curl_error($ch);
} else {
echo $output;
}
curl_close($ch);
?>
- "Stream" (axınlar) bölməsi: PHP Axınlar müxtəlif resurs tipləri üçün vahid interfeys təqdim edir, şəbəkə soketləri və HTTP daxil olmaqla.
stream_socket_client(): Müştəri şəbəkə əlaqəsini açır.stream_socket_server(): Server şəbəkə əlaqəsini yaradır.stream_select(): Bir çox axın üçün vəziyyət dəyişikliklərini gözləyir.
- "FTP" bölməsi: FTP serverləri ilə işləmək üçün funksiyalar.
ftp_connect(): FTP serverinə qoşulur.ftp_login(): FTP serverində daxil olur.ftp_get(): FTP serverindən fayl yükləyir.ftp_put(): Faylı FTP serverinə yükləyir.
- "Mail" bölməsi: Elektron poçt göndərmək üçün funksiyalar.
mail(): Poçt göndərir.
Xüsusi funksiyanın seçimi vəzifədən asılıdır. Aşağı səviyyəli protokollar ilə işləmək üçün soketlər uyğundur. Sadə HTTP sorğuları üçün file_get_contents() və ya cURL istifadə oluna bilər. cURL daha çevik və güclüdür mürəkkəb HTTP əməliyyatları üçün. Axınlar şəbəkə əlaqələri üçün daha abstrakt yanaşma təmin edir.