Хорошо, вы сказали, что это не JSON. Таким образом, функция json_decode () здесь бесполезна без дополнительных вещей. Если это происходит на стороне браузера, вам, вероятно, следует передать данные на сервер с помощью AJAX.
В качестве альтернативы вы можете посмотреть, как работает этот API (возможно, он соединяется с каким-либо сервером, использующим JSON для обмена данными?) И сделать то же самое в PHP.
EDIT:
Вам не нужно создавать строку JSON на стороне JavaScript. JSON сам по себе является нотацией объектов в JavaScript.
Если вам нужно передать данные, просто сделайте что-то похожее на это:
var data = [];
for (var i=0; i<results.length; i++){
data[] = {
'url': result.url
};
}
Тогда вам нужно только передать эти данные на сервер. Вы можете использовать функцию .get () (если вам нужно передать ее с помощью GET) из jQuery следующим образом:
jQuery.get('http://example.com/', data, function(){
// something to do when successful
});
Это довольно просто, и основная задача заключается в том, чтобы правильно создавать данные и передавать их на сервер с помощью вызова AJAX.