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 операциялары үчүн. Токтор желе байланыштарына көбүрөөк абстракциялык деңгээл камсыз кылат.