2015-09-19 3 views
1

Итак, у меня есть этот код, $ value2 - это массив значений, которые я редактирую.Как сделать переменную php на основе двух переменных, которые меняются

Я .txt документ для каждой переменной в массиве .. для Exemple

sometext_AA.txt

sometext_BB.txt

Я в настоящее время более 50 текстовых файлов, и это сделать BIG BIG BIG php files, потому что у меня есть следующий код для каждого файла, например, sometext_AA.txt ...

Я хотел бы сделать один скрипт (следующий), чтобы один скрипт работал на всех my $ value2 (я не удаляю ol d текстовых файлов, когда значение изменено, поэтому я не могу просто заставить скрипт читать все текстовые файлы, нужно сделать, чтобы он считывал активный $ value2 и обрабатывал их ...

Я даже не уверен если я нахожусь на хорошем пути, но я действительно надеюсь, что кто-то может мне помочь.

Спасибо!

$value2 = array("AA","BB","CC"); 
foreach($value2 as $value3) { 
foreach($random1_' .$value3' as $random2_' .$value3') { 
$random3_' .$value3' = 'sometext_.$value3'.txt;  
$random4_' .$value3' = json_encode(file_get_contents($random3_' .$value3')); 
echo $random4_' .$value3'; 
} 
} 

Это Exemple текущего текста у меня есть в моем файле, у меня есть очень большой файл PHP, а идентификатор как код, чтобы сделать его простым

foreach($random1_AA as $random2_AA) { 
    $random3_AA = 'sometext_AA.txt;  
    $random4_AA = json_encode(file_get_contents($random3_AA)); 
    echo $random4_AA; 
    } 

foreach($random1_BB as $random2_BB) { 
    $random3_BB = 'sometext_BB.txt;  
    $random4_BB = json_encode(file_get_contents($random3_BB)); 
    echo $random4_BB; 
    } 

foreach($random1_CC as $random2_CC) { 
    $random3_CC = 'sometext_CC.txt;  
    $random4_CC = json_encode(file_get_contents($random3_CC)); 
    echo $random4_CC; 
    } 
foreach($random1_DD as $random2_DD) { 
    $random3_DD = 'sometext_DD.txt;  
    $random4_DD = json_encode(file_get_contents($random3_DD)); 
    echo $random4_DD; 
    } 
+0

Пожалуйста, можете ли вы правильно откорректировать свой вопрос - часть кода не находится в блоке кода.Кроме того, ваш вопрос не совсем ясен - можете ли вы использовать капиталы и знаки препинания, чтобы сделать ваш вопрос понятным? –

+0

спасибо, я отредактировал его, надеюсь, понятный. –

ответ

0

Я думаю, что это что вы ищете, используя синтаксис $var_{$var_in_var}, который позволяет PHP (поэтому вы можете включить переменную в имя переменной).

$value2 = array("AA","BB","CC"); 

foreach($value2 as $value3) { 
    foreach($random1_{$value3} as $random2_{$value3}) { 
     $random3_{$value3} = 'sometext_'.$value3.'.txt';  
     $random4_{$value3} = json_encode(file_get_contents($random3_{$value3})); 

     echo $random4_{$value3}; 
    } 
} 

Однако я stongly советую вам рассмотреть следующие вопросы, чтобы сделать код обслуживаемой:

  1. Используйте соответствующие имена переменных, представляющую реальное содержание каждой переменной (вы Шоуде никогда используйте значение «value1», «value2» и т. д., так как имя ничего не сообщает о содержимом переменной).

  2. Не используйте переменные в именах переменных, если это абсолютно необходимо, что не является вашим делом. Вы можете использовать массивы, которые лучше подходят для этого.

На самом деле, я даже не знаю, что $random1_XX и $random2_XX должны быть. Я не вижу, чтобы вы определяли их в приведенном вами примере кода.

Вот пример того, как четко и кратко вы код может быть, если вы используете мои советы и , если все, что вам нужно прочитать все файлы и распечатывать их в формате JSON (это единственное, что типовая программа вам опубликовано будет делать после исправления).

$file_codes = array('AA', 'BB', 'CC'); 

foreach($file_codes as $file_code) { 
    echo json_encode(file_get_contents('sometext_'.$file_code.'.txt')); 
} 

Конечно, если у вас есть что-нибудь еще в вашей программе (может быть некоторый код, используя переменные $random3_XX и $random4_XX?), Я не могу догадаться, что это такое, так что я не могу предложить вам помощь, чтобы оптимизировать этот код ,

Смежные вопросы