У меня есть несколько массивов, содержащих элементы mathml (xml).
Например, мой массив:
Array
(
[0] => <mi>x</mi><mo>=</mo><mfrac><mrow><mo>-</mo><mi>b</mi> <mo>±</mo><msqrt><msup><mi>b</mi><mn>2</mn></msup><mo>-</mo><mn>4</mn><mi>a</mi><mi>c</mi></msqrt></mrow><mrow><mn>2</mn><mi>a</mi></mrow></mfrac>
[1] => <mi>x</mi><mo>+</mo><mn>2</mn><mo>=</mo><mn>3</mn>
[2] => <mfrac><mrow><mn>2</mn><mi>x</mi><mo>+</mo><mn>2</mn></mrow><mn>3</mn></mfrac><mo>-</mo><mn>3</mn><mo>=</mo><mn>2</mn>
[3] => <mo>-</mo><mn>3</mn><mo>+</mo><mn>2</mn><mo>=</mo><mi>x</mi>
)
Я хочу, чтобы весь массив начинался с <mo>
, но если он начинается с <mo>
тогда все нормально, как массив [3].
Например, ожидаемый вывод, который я хочу
Array
(
[0] =><mo>+</mo><mi>x</mi><mo>=</mo><mfrac><mrow><mo>-</mo><mi>b</mi><mo>±</mo><msqrt><msup><mi>b</mi><mn>2</mn></msup><mo>-</mo><mn>4</mn><mi>a</mi><mi>c</mi></msqrt></mrow><mrow><mn>2</mn><mi>a</mi></mrow></mfrac>
[1] =><mo>+</mo><mi>x</mi><mo>+</mo><mn>2</mn><mo>=</mo><mn>3</mn>
[2] =><mo>+</mo><mfrac><mrow><mn>2</mn><mi>x</mi><mo>+</mo><mn>2</mn></mrow><mn>3</mn></mfrac><mo>-</mo><mn>3</mn><mo>=</mo><mn>2</mn>
[3] =><mo>-</mo><mn>3</mn><mo>+</mo><mn>2</mn><mo>=</mo><mi>x</mi>
)
Как видите, весь массив начинается с <mo>
.
Ниже мой текущий код, чтобы добавить его:
$ress = array();
$arr_result=[];
for ($i=0; $i <= $length ; $i++) {
$ress=$result[$i];
if ($pos = (substr($ress,0,3)!="<mo>")) {
$arr_result[]=array_unshift($ress, "<mo>+</mo>");
}
else{
$arr_result[]=$ress;
}
}
print_r($arr_result);
$result store the array.