0

I am using PDO in order to select some values from my database.
For each iteration of my $teachArray, I store the selected array into my $language_id variable.
I then get rid of any empty array that I have inside my $language_id and assigning it to my $NoEmptyArray_language_id
However, I am only storing the last array inside of $language_id in $NoEmptyArray_language_id.

I would like to concatenate every array in $language_id into $NoEmptyArray_language_id.

I cannot use $NoEmptyArray_language_id .= $language_id; since it will give me an error: Array to String conversion

Here is my simple query.

$sqlFindId = "SELECT language_id
              FROM language_skill
              WHERE person_id = :person_id AND language_learning = :language_learning AND language_id = :language_id";

             $NoEmptyArray_language_id = "";
                foreach ($teachArray as $dataTeach)
                {
                    $query = $handler->prepare($sqlFindUser);
                    $query->bindValue(':person_id', $_SESSION['person_id']);
                    $query->bindValue(':language_learning', 1);
                    $query->bindValue(':language_id', $dataTeach);
                    $query->execute();
                    $language_id = $query->fetchAll(PDO::FETCH_COLUMN, 0);
                    if ( count( $language_id ) != 0 ) {
                        $NoEmptyArray_language_id .= $language_id;

                    }

                }
                print_r($NoEmptyArray_language_id);
3
  • sounds confusing. Maybe tell us what your end goal is. Commented May 19, 2017 at 5:14
  • I just want to add the values from my $language_id into $NoEmptyArray_language_id Commented May 19, 2017 at 5:15
  • This sounds like a candidate for a JOIN so you don't do an "N+1" load, slamming a query out each time through some loop. Commented May 19, 2017 at 6:06

1 Answer 1

2

You have to define $NoEmptyArray_language_id = array();

Also change code with $NoEmptyArray_language_id[] = $language_id;

Now you have array with values in $NoEmptyArray_language_id.

If you want to get string convert this array to string using implode function.

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.