Я получаю эту ошибку:
Ошибка синтаксического анализа: синтаксическая ошибка, неожиданное ‘$ array_of_lines’ (T_VARIABLE), ожидающая функция (T_FUNCTION) в C: \ wamp \ www \ site6 \ book-utilities.inc.php в строке 7.
Я пытаюсь использовать два класса для чтения в моих отдельных файлах, файл клиента должен быть прочитан, и каждая строка должна быть прочитана в новый экземпляр массива. Файл заказов должен быть прочитан в массив объектов заказов.
Вот то, что у меня есть сейчас, я делаю это неправильно?
<?phpclass readOrders{
$array_of_lines = fopen("orders.txt", 'r') or die("Failed to create file");
foreach($array_of_lines as $line) {
$pieces_of_line = explode(',', $line);
}
class readCustomers{
$array_of_more_lines = fopen("customers.txt", 'r') or die("Failed to create file");
foreach($array_of_more_lines as $line) {
$pieces_of_line = explode(',', $line);
}?>
Вот мои текстовые файлы
Orders.txt
1,4,0133360903,Building Java Programs,Computer Science
2,6,0321836995,Mathematics All Around,Mathematics
3,24,0321825721,Mathematics for Elementary Teachers with Activity Manual,Mathematics
4,10,0133011208,Business Math,Business
5,10,0321836960,Elementary Statistics,Statistics
6,15,0321838696,Business Statistics: A First Course,Statistics
7,19,0133485102,Managing Engineering and Technology,Engineering
8,2,0133128911,Basics of Web Design: HTML5 & CSS3,Computer Science
9,2,0133068307,Introduction to JavaScript Programming with XML and PHP,Computer Science
10,3,0133251241,Horngren's Financial & Managerial Accounting,Business
11,18,0132948850,Survey of Economics,Economics
12,18,0132948869,Microeconomics,Economics
13,18,0132991330,Macroeconomics,Economics
14,18,0132992795,Macroeconomics, 2/e,Economics
15,16,0132730359,E-Commerce 2013,Business
16,29,0132993341,Fundamentals of Futures and Options Markets,Business
17,21,0132991306,Modern Systems Analysis and Design,Business
18,25,0321836960,Elementary Statistics,Statistics
19,25,0321838696,Business Statistics: A First Course,Statistics
20,5,0133255433,Horngren's Financial & Managerial Accounting, The Managerial Chapters,Business
21,5,0133255573,Horngren's Financial & Managerial Accounting. The Financial Chapters,Business
22,11,0205890962,Mosaics: Reading and Writing Essays 6e,Student Success
23,30,013335671X,Machine Design,Engineering
24,23,0136015727,Reliability Engineering,Engineering
25,23,0132832887,Aerodynamics for Engineers,Engineering
26,23,0321899970,Technical Communication,English
customers.txt
2,Leonie,Köhler,[email protected],University of Stuttgart,Theodor-Heuss-Straße 34,Stuttgart,,Germany,70174,+49 0711 2842222
3,Bjørn,Hansen,[email protected],University of Oslo,Ullevålsveien 14,Oslo,,Norway,0171,+47 22 44 22 22
4,François,Tremblay,[email protected],McGill University,1498 rue Bélanger,Montréal,QC,Canada,H2G 1A7,+1 (514) 721-4711
5,František,Wichterlová,[email protected],Charles University,Klanova 9/506,Prague,,Czech Republic,14700,+420 2 4172 5555
6,Astrid,Gruber,[email protected],Vienna University of Technology,Rotenturmstraße 4, Vienna,,Austria,1010,+43 01 5134505
7,Helena,Holý,[email protected],Charles University,Rilská 3174/6,Prague,,Czech Republic,14300,+420 2 4177 0449
16,Aaron,Mitchell,[email protected],University of Manitoba,696 Osborne Street,Winnipeg,MB,Canada,R3L 2B9,+1 (204) 452-6452
17,Ellie,Sullivan,[email protected],Aurora College,5112 48 Street,Yellowknife,NT,Canada,X1A 1N6,+1 (867) 920-2233
18,João,Fernandes,[email protected],University of Lisbon,Rua da Assunção 53,Lisbon,,Portugal,,+351 (213) 466-111
19,Madalena,Sampaio,[email protected],University of Porto,4350 Rua dos Campeões Europeus de Viena, Porto,,Portugal,,+351 (225) 022-448
22,Isabelle,Mercier,[email protected],University of Burgundy,68 Rue Jouvence,Dijon,,France,21000,+33 03 80 73 66 99
23,Emma,Jones,[email protected],King's College,202 Hoxton Street,London,,United Kingdom,N1 5LH,+44 020 7707 0707
У класса могут быть только методы и определения свойств непосредственно между фигурными скобками { }
, Кроме того, вы не закрывали свои циклы foreach.
Похоже, вы хотите запустить свой код в конструкторе:
class readOrders{
public function __construct()
{
$array_of_lines = fopen("orders.txt", 'r') or die("Failed to create file");
foreach($array_of_lines as $line) {
$pieces_of_line = explode(',', $line);
}
}
}
Обычно плохая практика иметь более одного класса на файл. Вероятно, проблема вызвана отсутствием закрывающей фигурной скобки в цикле foreach в обоих классах:
class readOrders{
public function __construct(){
$array_of_lines = fopen("orders.txt", 'r') or die("Failed to create file");
foreach($array_of_lines as $line) {
pieces_of_line = explode(',', $line);
}
}
}
class readCustomers{
public function __construct(){
$array_of_more_lines = fopen("customers.txt", 'r') or die("Failed to create file");
foreach($array_of_more_lines as $line) {
$pieces_of_line = explode(',', $line);
}
}
}