$json_data = file_get_contents('data.json');
$data = json_decode($json_data, true); // true — повертає асоціативний масив
json_decode
встановлений у true
, дані будуть перетворені на масив. Якщо ні — на об'єкт.<?php
// Шлях до JSON-файлу
$file_path = 'data.json';
// Читання вмісту файлу
$json_data = file_get_contents($file_path);
if ($json_data === false) {
die('Помилка: не вдалося прочитати файл.');
}
// Перетворення JSON у масив
$data = json_decode($json_data, true);
if ($data === null) {
die('Помилка: не вдалося декодувати JSON.');
}
// Виведення даних
echo '<pre>';
print_r($data);
echo '</pre>';
?>
{
"name": "Іван",
"age": 30,
"city": "Київ",
"skills": ["PHP", "JavaScript", "HTML"]
}
Array
(
[name] => Іван
[age] => 30
[city] => Київ
[skills] => Array
( => PHP
[1] => JavaScript
[2] => HTML
)
)
json_decode
поверне null
. Використовуйте інструменти на кшталт JSONLint для перевірки валідності JSON.file_get_contents
?file_get_contents
підтримує читання даних з URL. Наприклад:$json_data = file_get_contents('https://api.example.com/data.json');
false
для file_get_contents
та null
для json_decode
, як показано у прикладі вище.file_put_contents
у поєднанні з json_encode
:$data = ['name' => 'Іван', 'age' => 30];
file_put_contents('data.json', json_encode($data));
file_get_contents
для читання JSON?cURL
для складніших сценаріїв, наприклад, коли потрібно передавати заголовки або параметри запиту.JsonStreamingParser
.sudo gem install cocoapods
.Podfile
у кореневій директорії вашого проекту.Podfile
:target 'MyApp' do
pod 'SwiftGuard'
end
pod install
.func validateUsername(_ username: String?) throws -> String {
guard let username = username, !username.isEmpty else {
throw NSError(domain: "InvalidUsername", code: 0, userInfo: nil)
}
return username
}
validateUsername
- це захисний кейс, який перевіряє, чи не пусте значення username
. Якщо значення є пустим або рівним nil
, то функція кидає виняток.username
:func login(username: String?, password: String?) {
do {
let validatedUsername = try validateUsername(username)
// далі код для авторизації користувача
} catch let error {
print("Помилка валідації: \(error.localizedDescription)")
}
}
validateUsername
для перевірки username
. Якщо перевірка не пройшла успішно, то функція кидає виняток, який ми ловимо у блоку catch
.while умова
код, який потрібно повторювати
end
x = 1;
while x <= 5
disp(x);
x = x + 1;
end
n = 5;
fact = 1;
while n > 1
fact = fact * n;
n = n - 1;
end
disp(fact);
number = -1;
while number < 0 || number > 10
prompt = 'Введіть число від 0 до 10: ';
number = input(prompt);
end
disp(['Ви ввели число ', num2str(number)]);
secret_number = randi([1, 100]);
guess = -1;
num_guesses = 0;
while guess ~= secret_number
prompt = 'Введіть число від 1 до 100: ';
guess = input(prompt);
num_guesses = num_guesses + 1;
if guess < secret_number
disp('Загадане число більше');
elseif guess > secret_number
disp('Загадане число менше');
end
end
disp(['Ви вгадали число ', num2str(secret_number), ' за ', num2str(num_guesses), ' спроб.']);