Ok, I get it.
However, I have several other places in my code where where I have very successfully passed a value from Ajax into PHP. BUT (!) , looking at that code I DID NOT attempt to send through the value until after the blade view had been compiled.
So, using the same view and the same Ajax request as above, I have all these guys, but they are not arrays, just single values:
success: function (data) {
var products = data['arr1'];
var supplier = data['arr2'];
var inventory = data['arr4'];
And then the blade view is this, NOTE the null value:
<div class="col-md-2">{{ Form::label('product_id', 'Product Code') }}</div>
<div class="col-md-4 mb-2">{{ Form::text('product_id', null, ['class'=>'form-control', 'readonly'=>'readonly']) }}</div>
So - bottom line, how do I get this array in there? Just put in a null? BUT then, how do I do that with a foreeach?
<select name="altSuppliers" id="alt_suppliers">
@foreach($altSuppliers as $supplier)
<option value="{{$supplier}}">{{$supplier ?? ''}}</option>
@endforeach
</select>
MANY THANKS!