Есть два запроса в формате JSON:
{"results":[{"header":{"similarity":"93.49"},"data":{"material":"azur lane"}}]}
{"results":[{"header":{"similarity":"93.49"},"data":{"material":"fate\/grand order, fate (series)"}}]}
Так же есть код:
$sau_query = explode(", ", $sau_res->data->material);
$text = "";
foreach($sau_query as $value){
if($result = mysqli_query($link, "SELECT * FROM `tags_copyright` WHERE `first` LIKE '%{$value}%'")){
if(mysqli_num_rows($result) == 0){
$last = str_replace(' ', '_', ucwords(preg_replace('![^\w\d\s]*!', '', $value)));
mysqli_query($link, "INSERT INTO `tags_copyright` VALUES (NULL, '$value', '#$last')");
}elseif(mysqli_num_rows($result) != 0){
while($res = mysqli_fetch_array($result)){
if($res['last'] != ""){
$text .= $res['last']." ";
echo $res['last'] //(выдает #Azur_lane и #Fate_Series)
}
}
}
}
}
echo $text //(Выдает #Azur_lane Azur_lane #Fate_Series)
Не могу понять как так получается что на выходе дублируется #Azur_Lane
И как решить данную проблему? Заранее спасибо...
PS.
azur lanearray(6) {
[0]=> string(1) "3"
["id"]=> string(1) "3"
[1]=> string(9) "azur lane"
["first"]=> string(9) "azur lane"
[2]=> string(10) "#Azur_Lane"
["last"]=> string(10) "#Azur_Lane"
} fate/grand order,
fate (series)array(6)
{ [0]=> string(2) "20"
["id"]=> string(2) "20"
[1]=> string(16) "fate/grand order"
["first"]=> string(16) "fate/grand order"
[2]=> string(0) ""
["last"]=> string(0) ""
} array(6) {
[0]=> string(1) "2"
["id"]=> string(1) "2"
[1]=> string(13) "fate (series)"
["first"]=> string(13) "fate (series)"
[2]=> string(12) "#Fate_Series"
["last"]=> string(12) "#Fate_Series"
}
В общем, вы используете mysqli_fetch_array()
, по умолчанию, она возвращает вам массив в виде key => value
, а также 0 => value
, потому что вы не указали каким образом вы хотите видеть итоговый результат в переменной $res
. Используйте второй параметр, чтобы указать что вы хотите использовать ассоциативный массив:
$res = mysqli_fetch_array($result, MYSQLI_ASSOC);
Подробнее обо всех параметрах и примерах можете прочесть в документации. Как раз таки там и написано, что по умолчанию вам приходит массив с разными ключами, но дублирующимися значениями.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Хотел сделать роутинг на чистом php, но потом меня черт дернул установить symfony/router и теперь я чувствую себя идиотоиУ меня проблема с подключением...
Не работает функция move_uploaded_file, скорее всего проблема в синтаксисе, можете подсказать, почему код так не работает?