Sobes.tech
Junior

PHPде кайсы тармактык функциялар бар?

sobes.tech AI

AIден жооп

PHP-де желе функциялары көп, алар желе менен иштөөдө ар кандай аспектилерин камтыйт. Эң кеңири колдонулгандары:

  • "Сокеттер" бөлүмү (Sockets):
    • socket_create(): Сокет түзөт.
    • socket_connect(): Алыскы хост менен байланыш түзөт.
    • socket_bind(): Сокетти дарек жана портко байлайт.
    • socket_listen(): Кирүүчү байланыштарды угат.
    • socket_accept(): Кирүүчү байланышты кабыл алат.
    • socket_read(): Сокеттен маалымат окуйт.
    • socket_write(): Маалыматтарды сокетке жазат.
    • socket_close(): Сокетти жабат.
    • socket_last_error(): Соңку сокет катасын кодуң кайтарат.
    • socket_strerror(): Катаны текст түрүндө сүрөттөйт.
<?php
// Сокет түзүү жана байланыш түзүү мисалы
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if ($socket === false) {
    echo "socket_create() иштебей калды: себеби: " . socket_strerror(socket_last_error()) . "\n";
} else {
    echo "Сокет түзүлдү.\n";
}

$result = socket_connect($socket, 'example.com', 80);
if ($result === false) {
    echo "socket_connect() иштебей калды: себеби: " . socket_strerror(socket_last_error($socket)) . "\n";
} else {
    echo "Байланыш түзүлдү.\n";
}
socket_close($socket); // Сокетти жабуу
?>
  • "URL" бөлүмү:
    • file_get_contents(): Файлдын мазмунун сап катары окуйт (HTTP үчүн колдонулушу мүмкүн).
    • file_put_contents(): Маалыматтарды файлга жазат (HTTP POST үчүн колдонулушу мүмкүн).
    • get_headers(): HTTP жооптун башталыштарын кайтарат.
    • parse_url(): URL-ди компоненттерге бөлөт.
    • http_build_query(): Суроо сапты түзөт.
  • "DNS" бөлүмү:
    • gethostbyname(): Хосттун IPv4 дарегин кайтарат.
    • gethostbyaddr(): IP дарегине ылайык хост атын кайтарат.
    • getmxrr(): Домейн үчүн почта алмашуу жазуулары (MX) алат.
  • "cURL" бөлүмү (cURL кеңейтүүсү талап кылынат): HTTP суроолорду аткаруу үчүн көп функциялуу кардарлык механизмин камсыздайт. Cookies, прокси, аутентификация жана башка иштер үчүн функцияларды камтыйт.
    • curl_init(): cURL сессиясын баштайт.
    • curl_setopt(): cURL үчүн опцияларды орнотот.
    • curl_exec(): cURL сессиясын аткарат.
    • curl_close(): cURL сессиясын жабат.
<?php
// cURL колдонуу менен барак мазмунун алуу мисалы
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "http://example.com/");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // Натыйжаны сап катары кайтарат

$output = curl_exec($ch);

if ($output === false) {
    echo "cURL катасы: " . curl_error($ch);
} else {
    echo $output;
}

curl_close($ch);
?>
  • "Stream" (токтор) бөлүмү: PHP Streams ар кандай ресурстар үчүн бирдиктүү интерфейс камсыз кылат, анын ичинде желе сокеттери жана HTTP.
    • stream_socket_client(): Кардарлык желе байланышын ачат.
    • stream_socket_server(): Сервердик желе байланышын түзөт.
    • stream_select(): Көптөгөн токтордогу абалды күтөт.
  • "FTP" бөлүмү: FTP серверлери менен иштөө үчүн функциялар.
    • ftp_connect(): FTP серверине туташуу.
    • ftp_login(): FTP серверине кирүү.
    • ftp_get(): FTP серверинен файл жүктөө.
    • ftp_put(): Файлды FTP серверине жүктөө.
  • "Mail" бөлүмү: Электрондук почта жөнөтүү үчүн функциялар.
    • mail(): Кат жөнөтөт.

Конкреттүү функцияны тандоо тапшырдан көз каранды. Төмөнкү деңгээл протоколдору менен иштөө үчүн сокеттер ылайыктуу. Жөнөкөй HTTP суроолор үчүн file_get_contents() же cURL колдонсо болот. cURL көбүрөөк ийкемдүү жана күчтүү, комплекстүү HTTP операциялары үчүн. Токтор желе байланыштарына көбүрөөк абстракциялык деңгээл камсыз кылат.